Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di pheeko
    Registrato dal
    Feb 2003
    Messaggi
    99

    nella funzione non funziona

    questo è il codice:
    <?php

    $mysqli = new mysqli("localhost", "User", "Password", "test");

    /* check connection */
    if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
    }

    function list_region () {
    $query ="select * from region order by numero";
    $result = $mysqli->query($query);
    $output = '<select name="region" onChange="get_provincia(this.value);">';
    $output .= '<option value="0">Seleccione una</option>';
    while($o = $result->fetch_object()) {
    $output .= '<option value="'.$o->rid.'">('.$o->numero.') '.$o->nombre.'</option>\n';
    }
    $output .= '</select>';

    return $output;
    }
    echo list_region ();
    ?>

    E questo è l'errore che mi da che corrisponde a questa riga:

    Fatal error: Call to a member function query() on a non-object in /usr/local/apache2/htdocs/ajax_example/php/provaecancella.php on line 15
    $result = $mysqli->query($query);
    Sembra a prima vista che ci sia un errore nella query, invece se lo stesso codice lo scrivo fuori dalla funzione, funziona!(scusate il gioco di parole)

    Qualcuno ha qualche idea?
    MORITURI TE SALUTANT

  2. #2
    non vorrei dire una boiata..
    secondo me dovresti scrivere anche la chiamata a mysqli all'interno della funzione.
    pero' non sono sicura.
    Success in life is a matter not so much of talent and opportunity as of concentration and perseverance.

  3. #3
    Utente di HTML.it L'avatar di pheeko
    Registrato dal
    Feb 2003
    Messaggi
    99
    Grazie per l'idea, provato ma il risultato non cambia....
    MORITURI TE SALUTANT

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    $mysqli in list_region non esiste, quindi ti dà l'errore.
    teoricamente passando la variabile alla funzione dovrebbe andare...

    ciao

  5. #5
    Utente di HTML.it L'avatar di pheeko
    Registrato dal
    Feb 2003
    Messaggi
    99
    cazzarola, avevate ragione entrambi, chiedo scusa...
    dovrò prendermi una pausa!!!
    GRAZIE MILLE
    MORITURI TE SALUTANT

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    131
    bastava dichiarare come global la variabile $mysqli nella funzione...


    codice:
    function list_region () { 
    global $mysqli;
    
    ...
    ..
    ..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.