• User Newbie

    Formattazione dati presi da mysql

    Salve, mi sono appena iscritto al forum xkè vedo persone ke mi potrebbero aiutare.
    Premetto di masticare poco il linguaggio PHP ma di MySQL sono abbastanza preparato!

    Sto creando un piccolo database in PHP x l'inserimento dei dati e per farli poi stampare in una pagina PHP.

    Effettuo la select ma al momento in cui voglio stampare i record del database mi esce questo tipo di errore:

    Fatal error: Function name must be a string in C:\Programmi\EasyPHP 2.0b1\www\risultati.php on line 36

    il codice completo:

    <?php
    // richiamo il file di configurazione
    require 'config.php';

    // richiamo lo script responsabile della connessione a MySQL
    require 'connect.php';

    // preparo la query
    $query =("SELECT * FROM cliente");
    //lancio la query
    $result = mysql_query($query);
    // controllo l'esito
    if (!$result) {
    die("Errore nella query $query: " . mysql_error());
    }

    // chiudo la connessione a MySQL
    mysql_close();

    echo 'Query eseguita correttamente <br>';
    echo '<a href = "webform.html"> clicca </a>qui per inserire un altro cliente';
    echo "<table border='1'>";
    echo "<tr> <th>Nome</th> <th>Cognome</th> </tr>";
    // keeps getting the next row until there are no more to get

    while ($row = mysql_fetch_array($result)) {
    //Print out the contents of each row into a table
    echo "<tr><td>";
    echo $row('nome');
    echo "</td><td>";
    echo $row['cognome'];
    echo "</td></tr>";

    }
    echo "</table>";
    ?>

    in attesa di risposte vi ringrazio cmq xkè guardando le vostre discussioni sto cominciando a imparare e "masticare" il linguaggio php!

    grazie
    arrivederci :ciauz:


  • User Newbie

    ke sbadato ho individuato l'errore di sintassi ke stava nelle parentesi!! 😄
    ma cmq ora mi esce questo errore

    Notice: Undefined index: nome in C:\Programmi\EasyPHP 2.0b1\www\risultati.php on line 36

    uffiiiiiiiiiii 😢😢😢😢😢😢😢❌x❌x:x


  • User Attivo

    Ciao Kello e benvenuto nel ForumGT

    Ti ho spostato i messaggi i un altro topic visto che l'argomento da trattare era diverso.

    Un'altra cosa che ti chiederei è se possibile non usare troppe abbreviazioni, tipo: x, xchè, ke, ....

    Ok...

    ora vediamo se si può risolvere qualche problema 🙂

    La riga 36 qual'è innanzi tutto ?


  • User Newbie

    cmq la riga 36 è:

    echo $row['nome'];

    e mi esce l'errore: "Undefined index: nome ....ecc"

    se è un problema di inizializzazione delle variabili potete indicarmi la sintassi corretta per inizializzare le variabili in questo codice??!!

    scusate ma di PHP sono una schiappa !!!:fumato:


  • User

    Penso che il problema sia che non puoi chiudere la connessione al database con mysql_close() e dopo usare mysql_fetch_array($result).


  • User Newbie

    ho provato a chiudere la connessione con close_mysql mettendola alla fine... ma il problema rimane!!!

    se ci sono soluzioni aiutatemi al più presto!!!

    grazie;)


  • User Newbie

    ho provato anke ad utilizzare mysql_free_result() e mysql_result()
    ma i miei tentativi sono andati a vuoto!!!

    nel post precedente mi sono impapokkiato cmq è msql_close() il metodo :ciauz:
    sorry


  • User

    Non avevo notato questo nel codice che hai postato all'inizio

    echo $row('nome');

    Deve essere con le parentesi quadre

    echo $row['nome'];

    Se hai fatto correzioni conviene che posti il codice modificato.


  • User Newbie

    Si Gmassi avevo già precisato che l'errore stava nelle parentesi ma cmq il codice rimane questo e con questo anche l'errore visualizzato alla stampa dei risultati:
    [PHP]
    <?php
    // richiamo il file di configurazione
    require 'config.php';

    // richiamo lo script responsabile della connessione a MySQL
    require 'connect.php';

    // preparo la query
    $query =("SELECT * FROM cliente");
    //lancio la query
    $result = mysql_query($query);
    // controllo l'esito
    if (!$result) {
    die("Errore nella query $query: " . mysql_error());
    }

    // chiudo la connessione a MySQL
    mysql_close();

    echo 'Query eseguita correttamente <br>';
    echo '<a href = "webform.html"> clicca </a>qui per inserire un altro cliente';
    echo "<table border='1'>";
    echo "<tr> <th>Nome</th> <th>Cognome</th> </tr>";
    // keeps getting the next row until there are no more to get

    while ($row = mysql_fetch_array($result)) {
    //Print out the contents of each row into a table
    echo "<tr><td>";
    echo $row['nome'];
    echo "</td><td>";
    echo $row['cognome'];
    echo "</td></tr>";

    }
    echo "</table>";
    ?>
    [/PHP]

    se ci sono soluzioni sono sempre ben accettate!!
    grazie buon lavoro!


  • User Attivo

    Ciao Kello,

    togli il mysql_close, oppure mettilo alla fine prima di "?>"

    Hai quell'errore perchè non viene preso niente dal db, per il fatto che è chiuso.

    Dimmi se funziona..

    :ciauz:


  • User Newbie

    MZ ho provato anke a non kiudere la connessione!
    i dati li prende ma sottoforma di stringa cioè, per ogni record che aggiungo mi esce quella stringa di errore: Undefined index....
    non sarà mica un problema di inizializzazione di variabile?
    se è si, mi potresti indicare come posso fare?? dato che ho trovato vari tutorial ma non ho capito molto bene!!!
    il codice cmq rimane quello del post precedente...:bho:


  • User

    Controlla bene anche i nomi dei campi nella tabella.
    Se per esempio il campo si chiama Nome con la maiuscola e usi $row['nome'] avresti un errore Undefined index.


  • User Attivo

    quoto gmassi, kello l'altra spiegazione possibile di quell'errore può essere dovuta a quanto suggerito da gmassi.