Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: problema php

  1. #1

    problema php

    Salve, io ho un codice php che si collega ad un database, dove ci sono le tabelle argomenti( campi: id argomento, Argomento ecc.) e riviste( id rivista nome argomento(cod) ecc.)
    ora, io volevo fare un "menu a tendina cioè questo:


    delntro quella tendina dovrebbero venire fuori i vari argomenti, che però non visualizza, dove ho sbagliato????


    <?php

    Print "<form action='argomenti3.php?' method='post'>";
    $hostname="localhost";
    $username="root";
    $password="654321";
    //connessione a server sql
    $conn=mysql_connect($hostname,$username,$password) ;
    if(!$conn)
    die("errore nella connessione");
    //selezione database
    $dbname="metaj";
    $db=mysql_select_db($dbname);
    // Estrae gli argomenti
    $query = "select * from argomenti order by Argomento ";
    $risultato = mysql_query($query);
    if (! $risultato)
    { print "errore nel comando";
    exit();
    }
    Print "<select name='argomenti'>
    ";
    //Recupera i dati
    $riga = mysql_fetch_array($risultato);
    while ($riga)
    {
    //Vengono scritti i valori dei campi dell'elemento corrente
    $argomenti = $riga['argomenti'];
    Print "<Option value= $argomenti > $argomenti </OPTION>";
    // Si sposta sulla riga successiva
    $riga = mysql_fetch_array($risultato);
    }
    Print "</select>";
    Print "<INPUT TYPE='SUBMIT' name='submit' VALUE ='Seleziona'>" ;
    mysql_close($conn);
    ?>

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    57
    perchè mysql_fetch_array ritorna i risultati con array numerici, quindi nn puoi mettere $argomenti = $riga['argomenti'];.

    Dovresti mettere $argomenti = $riga[0]; per esempio.

    Per fare questo "$argomenti = $riga['argomenti'];" devi utilizzare mysql_fetch_assoc al posto di mysql_fetch_array

  3. #3
    quindi devo mettere mysql_fetch_assoc al posto di mysql_fetch_array e basta??

  4. #4
    Originariamente inviato da awo23
    perchè mysql_fetch_array ritorna i risultati con array numerici, quindi nn puoi mettere $argomenti = $riga['argomenti'];.

    Dovresti mettere $argomenti = $riga[0]; per esempio.

    Per fare questo "$argomenti = $riga['argomenti'];" devi utilizzare mysql_fetch_assoc al posto di mysql_fetch_array
    beh! no.

    mysql_fetch_array restituisce "entrambi" gli indici, numerico e associativo.

    E' gestita male l'estrazione del result set. Prova cosi'::

    Codice PHP:

    //Recupera i dati
    while ($riga mysql_fetch_array($risultato))
    {
    //Vengono scritti i valori dei campi dell'elemento corrente
    $argomenti $riga['argomenti'];
    Print 
    "<Option value= $argomenti > $argomenti </OPTION>";



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    è uguale a prima solo che $riga=mysql_fetch_array($risultato) è sopra

  6. #6
    il tutto mi deve restituire nek menu a tendina delle stringhe, non risultati numerici

  7. #7
    help meeeee!!!

  8. #8
    Originariamente inviato da Andrea90
    help meeeee!!!
    leggili tutti i post in risposta al tuo thread....


    http://forum.html.it/forum/showthrea...3#post12254083

    e gia' che ci sei accertati che ci sia un campo di nome "argomenti" .... ma non credo ci sia.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    letto e fatto tutto ma non funge

  10. #10
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    "non funge" è generico, per questo non ti rispondono
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

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 © 2025 vBulletin Solutions, Inc. All rights reserved.