Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    95

    foreach su un array bidimensionale

    Ciao a tutti!
    Sto provando a fare un esercizio in php. Ho creato un semplice database con una tabella. Adesso voglio stampare una tabella html contenente i valori della tabella del database.
    Codice PHP:
    <?php
        
    //mi connetto al database con nome utente e password
        
    mysql_connect("localhost""prova""prova");
        
    //seleziono il database (può essercene più di uno)
        
    mysql_select_db("prova");
        
        
    //seleziono tutte le righe complete e le salvo in un array di array, in modo da poter facilmente
        //stampare una tabella html contenente tutti i valori del database
        
    $result mysql_query("SELECT Titolo, Artista, Anno FROM CD ORDER BY Titolo");
        
    $i 0;
        while (
    $row mysql_fetch_array($result)) {
            
    $data[$i++] = array('titolo'=>$row['Titolo'],'artista'=>$row['Artista'],'anno'=>$row['Anno']);
        }
    ?>
    <html>
        <head>
            <title>Prova connessione al database con PHP</title>
        </head>
        <body>
            <table>
                <?php
                    
    foreach ($data as $elemento) {
                        echo 
    '<tr>';
                        foreach (
    $elemento as $valore) {
                            echo 
    '<td>';
                            echo 
    "$valore";
                            echo 
    '</td>';
                        }
                        echo 
    '</tr>';
                    }
                
    ?>
            </table>
        </body>
    </html>
    Il problema è quando provo ad annidare i due cicli foreach. O meglio, l'errore lo ottengo al primo foreach: mi dice "Warning: Invalid argument supplied for foreach()".
    Dove sbaglio? Grazie in anticipo!

  2. #2
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    Ciao,

    ho provato il tuo codice e a me funziona.

    Verifica che i campi che tu chiami Titolo, Artista, Anno siano chiamati così anche nel database: l'errore che hai scritto di avere, a me esce se ad esempio nella select, richiamo dei campi che non esistono.

    A quel punto, il foreach va in errore.


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    95
    Risolto, grazie 1000!

  4. #4
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    era quello il problema, alla fine? così tanto per sapere...


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

  5. #5
    Utente di HTML.it L'avatar di echoweb
    Registrato dal
    Sep 2008
    Messaggi
    419
    up


    "Non soffocare la tua ispirazione e la tua immaginazione,
    non diventare lo schiavo del tuo modello"

    Vincent van Gogh

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.