[PHP + MYSQLI] Stampa a video di tabella nel database

di il
3 risposte

[PHP + MYSQLI] Stampa a video di tabella nel database

Ho un database con la tabella Moduli e i seguenti campi: ID, nome, data, missione, file.

Voglio visualizzare i vari record su una tabella in una pagina.

Ho dunque creato il file classifica.php con il seguente codice:
<?php

// dati di connessione al mio database MySQL
$db_host = 'xxxx';
$db_user = 'xxxxx';
$db_pass = 'xxxx';
$db_name = 'xxxxxxx';

// connessione al DB utilizzando MySQLi
$cn = new mysqli($db_host, $db_user, $db_pass, $db_name);

// verifica su eventuali errori di connessione
if ($cn->connect_errno) {
    echo "Connessione fallita: ". $cn->connect_error . ".";
    exit();
}

//definisco la query
$query = "SELECT * FROM Moduli";

// esecuzione della query
if (!$cn->query($query)) {
  echo "Errore della query: " . $cn->error . ".";
}



$risultati = mysqli_query($query);

$numcampi = @mysqli_num_fields($risultati);

echo "<table><tr>";
echo "<th>Nome</th><th>Data</th><th>Missione</th><th>File</th>";
echo "</tr>";


while( $row = mysqli_fetch_assoc( $risultati ) )
{
   // quindi accedi ai dati con ad esempio
   $row['nome'];
   $row['data'];
   $row['missione'];
   $row['file'];
 
   echo "<tr><td>".$row['nome']."</td><td>".$row['data']."</td><td>".$row['missione']."</td><td>".$row['file']."</td></tr>";

}

echo "</table>";

// chiusura della connessione
$cn->close();
?>

Ho dei dubbi sia sugli " che sugli ' , non so se sono giusti, inoltre secondo me non va qualcosa nel while.

Come risultato ottendo una schermata con solo i ttoli della tabella, senza nessun record dentro....dove sbaglio?

3 Risposte

  • Re: [PHP + MYSQLI] Stampa a video di tabella nel database

    Che problema hai precisamente?
    $risultati = mysqli_query($query);
    
    la query viene eseguita correttamente?

    Tieni presente che questo
    $numcampi = @mysqli_num_fields($risultati);
    Non ti serve a nulla nel codice che hai postato

    Come anche
       // quindi accedi ai dati con ad esempio
       $row['nome'];
       $row['data'];
       $row['missione'];
       $row['file'];
    Non ti servono.

    In qualsiasi caso, fai attenzione ai nomi dei campi nel database (Sono case sensitive), quindi controlla se ad sempio
    $row['nome']; non debba essere $row['Nome']; o $row['NOME']; o qualche altra cosa e così via
  • Re: [PHP + MYSQLI] Stampa a video di tabella nel database

    Ho rimosso quelle righe superflue, scusatemi ma erano dei miei appunti non rimossi, controllato i case sensitive,
    praticamente mi stampa i titoli da qui a video e ok

    echo "<table><tr>";
    echo "<th>Nome</th><th>Data</th><th>Missione</th><th>File</th>";
    echo "</tr>";


    ma sotto ai titoli non escono i record dentro la tabella quindi sotto i titoli esce pagina bianca, come se il codice dentro while non funzionasse, ma non mi genera nessun errore.... riposto il codice che uso
    <?php
    
    // dati di connessione al mio database MySQL
    $db_host = 'xxxx;
    $db_user = 'xxxx';
    $db_pass = 'xxxxxx';
    $db_name = 'xxxxxx';
    
    // connessione al DB utilizzando MySQLi
    $cn = new mysqli($db_host, $db_user, $db_pass, $db_name);
    
    // verifica su eventuali errori di connessione
    if ($cn->connect_errno) {
        echo "Connessione fallita: ". $cn->connect_error . ".";
        exit();
    }
    
    //definisco la query
    $query = "SELECT * FROM Moduli";
    
    // esecuzione della query
    if (!$cn->query($query)) {
      echo "Errore della query: " . $cn->error . ".";
    }
    
    
    
    $risultati = mysqli_query($query);
    
    
    echo "<table><tr>";
    echo "<th>Nome</th><th>Data</th><th>Missione</th><th>File</th>";
    echo "</tr>";
    
    
    while( $row = mysqli_fetch_assoc( $risultati ) )
    {
       
       echo "<tr><td>".$row['Nome']."</td><td>".$row['Data']."</td><td>".$row['Missione']."</td><td>".$row['File']."</td></tr>";
    
    }  
    
    echo "</table>";
    
    // chiusura della connessione
    $cn->close();
    
    ?>
    
  • Re: [PHP + MYSQLI] Stampa a video di tabella nel database

    Ho risolto!
Devi accedere o registrarti per scrivere nel forum
3 risposte