• User

    Visualizzare i risultati di una query in una tabella

    Ragazzi...ho bisogno di un osservatore acuto che li trovi l'errore in questo script. Praticamente ho bisogno di visualizzare, sotto forma di tabella, i risultati di una query sul database, ma non so se mischio bene html e php per riuscirci. Premetto che se tolgo i tag relativi alla tabella lo script funziona. Qualconu sa dirmi l'errore?

    Codice PHP:
    [LEFT]$mysqli = new mysqli('localhost', 'root', '...', '...');
    if ($mysqli == false)
    {die ("Errore nella connessione, verificare i parametri nel file config.inc.php");}
    else
    {$result = $mysqli->query("SELECT DISTINCT Autore, Titolo, Album FROM testo ORDER BY Autore, Titolo" );
    echo "<table>
    <tr>
    <th id="aut"> Autore </th>
    <th id="tit"> Titolo </th>
    <th id="tit"> Album </th>
    </tr> ";
    if ($result->num_rows != 0)
    {while($row = $result->fetch_assoc())
    {$Aut=$row['Autore'];
    $Tit=$row['Titolo'];
    $Alb=$row['Album'];
    $riga = " <tr>
    <td id="aut">".$row['Autore']." </td>
    <td id="tit">".$row['Titolo']." </td>
    <td id="tit">".$row['Album']."</td>
    </tr>";
    echo $riga;
    }
    }
    echo "</table>";
    else {echo "Non ci sono testi";}
    }
    $mysqli->close();
    [/LEFT]


  • User Attivo

    Qualcosa di simile mi capitava mostrando il preview di una newlettrer in html.
    La colpa era delle slash aggiunte da addslashes su ' e " ho risolto con uno stripslashes
    Poi so che alcuni server hanno attivo il magic quote che fa qualcosa di simile alle due funzioni riportate sopra. Magari ti si incasina tutto per colpa sua.


  • User

    Il fatto è che, se stampo solo l'intestazione della tabella, mi funzionava, nonostante le slashes. Il problema è all'interno del while credo!


  • User

    Ho risolto...ho fatto uno stupido:446: errore! Ho messo echo "</table>"; tra il blocco if e il blocco else...e giustamente mi dava errore!!!

    [php]if ($result->num_rows != 0)
    {while($row = $result->fetch_assoc())
    {$Aut=$row['Autore'];
    $Tit=$row['Titolo'];
    $Alb=$row['Album'];
    $riga = " <tr>
    <td id="aut">".$row['Autore']." </td>
    <td id="tit">".$row['Titolo']." </td>
    <td id="tit">".$row['Album']."</td>
    </tr>";
    echo $riga;
    }
    }
    echo "</table>";
    else {echo "Non ci sono testi";}
    [/php]
    Mentre dovevo metterlo sotto l'else:
    [php]if ($result->num_rows != 0)
    {while($row = $result->fetch_assoc())
    {$Aut=$row['Autore'];
    $Tit=$row['Titolo'];
    $Alb=$row['Album'];
    $riga = "<tr>
    <td id="aut">".$row['Autore']."</td>
    <td id="tit">".$row['Titolo']."</td>
    <td id="tit">".$row['Album']."</td>
    </tr>";
    echo $riga;
    }
    }

    else
    {echo "Non ci sono testi";}
    echo "</table>";[/php]
    Che sciocca!!!:vino: