Visualizzazione risultati 1 fino 10 di 10

Discussione: [PHP/MySQL] Errore in funzione con query

  1. #1
    Guest

    Unhappy [PHP/MySQL] Errore in funzione con query

    Ciao a tutti, ho un problema: sto cercando di fare una query con un while che mostra tutti i risultati dentro una funzione (menu()) ...ma questa mi da questo errore:
    Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in index.php on line 21

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in index.php on line 21

    Notice: Undefined variable: menuq in index.php on line 21

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in index.php on line 23
    questo invece è il codice:
    Codice PHP:
    function menu() {
    $menuq = mysql_query("SELECT * FROM categorie");
    $return = "<li><a href=\"index.php\">Home</a></li>";
    while(
    $menu = mysql_fetch_array($menuq)) {
    $return .= "<li><a href=\"index.php?cat=$menu[id]\">$menu[nome]</a></li>";
    }
    return
    $return;
    }
    Dove sto sbagliando? xD Grazie mille...ciao Davide!

  2. #2
    Guest

    Predefinito

    non effettui la connessione al DB prima della query.


    Ciao!

  3. #3
    Guest

    Predefinito

    Si invece (all'inizio del file):
    Codice PHP:
    error_reporting(E_ALL); include("cons.php");
    cons.php:
    Codice PHP:
    <?php
    $cons
    = mysql_connect("localhost", "root", "") or die("<b>Errore (\$cons)</b>:".mysql_error());
    $sldb = mysql_select_db("db", $cons) or die("<b>Errore (\$sldb)</b>:".mysql_error());
    ?>
    Ciauuuuuuu! ;D

  4. #4
    Guest

    Predefinito

    Metti un mysql_error() anche alla query.


    Ciao!

  5. #5
    Guest

    Predefinito

    In pratica e come se mancasse la connessione...perchè? xD
    Ciauuuu! ^^

  6. #6
    Guest

    Predefinito

    Codice PHP:

    function menu() {
    global
    $cons;
    $menuq = mysql_query("SELECT * FROM categorie", $cons);
    $return = "<li><a href=\"index.php\">Home</a></li>";
    while(
    $menu = mysql_fetch_array($menuq))
    $return .= "<li><a href=\"index.php?cat=$menu[id]\">$menu[nome]</a></li>";

    return
    $return;
    }

  7. #7
    Guest

    Predefinito

    Niente da fare!...ci sono riuscito così:
    Codice PHP:
    $menu_start = "";
    $menuq = mysql_query("SELECT * FROM categorie");
    $menu_start .= "<li><a href=\"index.php\">Home</a></li>";
    while(
    $menu = mysql_fetch_array($menuq)) {
    $menu_start .= "<li><a href=\"index.php?cid=$menu[id]\">$menu[nome]</a></li>";
    }
    function
    menu() {
    global
    $menu_start;
    return
    $menu_start;
    }
    ...ora ho un altro problema! Ho una lista di file, dove tolgo .php e mi rimane solo il numero (che sarebbe il nome del file... 1.php,2.php,3.php) ora quando metto sort() mi spunta così:
    * News #01
    * News #010 // sbagliata...
    * News #02
    * News #03
    * News #04
    * News #05
    * News #06
    * News #07
    * News #08
    * News #09
    // ...deve spuntare qui
    Invece il News #10 mi deve spuntare dopo il 9...ma perchè non spunta? xd
    Ecco il codice:
    Codice PHP:
    $dir = opendir(getcwd()."/news/");
    while (
    $file = readdir($dir)) {
    if(
    $file == "." OR $file == "..") continue;
    $nome = explode(".php",$file);
    sort($file);
    if(
    $nome["0"] == 0 < 9) {
    echo
    "<li><a href=\"index.php?a=news&id=$nome[0]\">News #0$nome[0]</a></li>\n";
    } else {
    echo
    "<li><a href=\"index.php?a=news&id=$nome[0]\">News #$nome[0]</a></li>\n";
    }
    }
    closedir($dir);
    e dopo mi visualizza 010..non 10!! xD
    Grazie mille...ciao Davide! ^^
    Ultima modifica di sIM : 02-05-2009 alle ore 16.09.47

  8. #8
    Guest

    Predefinito

    Scusa ma il sort lo dovresti fare quando estrai tutti i file, non durante l'estrazione.. c'è un errore nell'algoritmo.
    Codice PHP:
    <?
    $dir
    = opendir(getcwd()."/news/");
    $ar = array();
    while (
    $file = readdir($dir)) {
    if(
    $file == "." OR $file == "..") continue;
    $nome = explode(".php",$file);
    $ar[] = $nome[0];
    }
    closedir($dir);

    sort($ar);
    foreach(
    $ar as $value) {
    $s = '';
    if(
    $value < 9) $s='0';
    echo
    "<li><a href=\"index.php?a=news&id=".$value."\">News #".$s.$value."</a></li>\n";
    }
    p.s. a te l'indentazione non piace proprio eh?

  9. #9
    Guest

    Predefinito

    Non c'è un modo più veloce di tutto questo enorme codice? xD

    PS. no...credo che la grafica del codice debba essere con pochissimi tab (o spazi)!! :P

  10. #10
    Guest

    Predefinito

    10 righe non mi sembrano tante

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •