• User

    [Risolto] php,problema guestbook e database

    salve a tutto il forum,ho 2 problemini semplici che credo che voi risolverete in un secondo 🙂
    1.io sto creando un guestbook in php,funziona tutto ma vorrei che i messaggi più recenti che vengono scritti comparissero in alto nella pagina,e non in fondo(dopo quelli vecchi)

    questo è il codice che prende i dati dal database:

    [PHP]<?php
    $connessione=mysql_connect("localhost", "root", "");
    $selezione_db=mysql_select_db("guestbook", $connessione);
    ?>
    <HTML>
    <HEAD>
    <body background="a.bmp">
    <center><img src="senza-titolo-1.gif"></center><br><br><br><br><br>
    <CENTER><img src="LASCIA-QUI....gif"></center><br><br><br><br>
    <a href="scrivi.htm"><center><img src="firma.gif" border="0"></center></a><br><br><br><br>

    <TITLE>GUESTBOOK</TITLE>
    </HEAD>
    <BODY>
    <?php
    $lettura_risultati=mysql_query("select * from dati order by data_ora");
    while($scatola_temporanea=mysql_fetch_array($lettura_risultati)){
    $nome_utente=$scatola_temporanea["nome_utente"];
    $testo_messaggio=$scatola_temporanea["messaggio"];
    $data_inserimento=$scatola_temporanea["data_ora"];
    echo "<center><h2><font face="comic sans ms" color="blue">$nome_utente, in data $data_inserimento, ha scritto:<h2></font><br><br><font
    color="lime">$testo_messaggio<br><br><br></font><hr>";
    } //fine ciclo while che scorre la query e piazza i risultati nell'array temporaneo
    ?>
    </BODY>
    </HTML>[/PHP]

    2 e l'altro problemino,io sto usando un database in locale,ma mi servirà su internet quando uppo il guestbook,ecco sto provando www.freemysql.it ma cosa devo mettere qui

    $connessione=mysql_connect("localhost", "root", "");

    al posto di root l'username poi la pass,ma al posto di lochal host?

    grazie anticipatamente:fumato:


  • User Attivo

    per il primo problema:

    se nel database hai il campo id con impostato auto_increment puoi sostituire questa stringa

    [html]$lettura_risultati=mysql_query("select * from dati order by data_ora");
    [/html]
    con questa
    [html]$lettura_risultati=mysql_query("select * from dati order by id DESC");
    [/html]

    oppure puoi provare mettendo DESC direttamente nella stringa che gia hai

    [html]$lettura_risultati=mysql_query("select * from dati order by data_ora DESC");
    [/html]

    DESC serve per selezionare in ordine decrescente i dati di quel campo

    per il secondo problema devi mettere l host che ti da il sito dove usi mysql e il nome e la pass. se giri un po sul sito dove hai preso il database dev esserci scritto sicuramente da qualche parte.
    mysql_connect("host del sito", "qua va il nome ", "qua va la password");

    per consigli piu profesionali ti conviene aspettareche risponda qualcun altro. anche io sono una frana in php 🙂


  • Super User

    In questa pagina ci sono le info.

    mySQL host: www.freemysql.it


  • User

    ssssi grazie,ce l'ho fatta!funziona tutto!:ciauz:


  • User

    ehm ehm no non funziona proprio tutto.....guardate cosa succede: http://ambigioz.altervista.org/cartella/guestbook.php
    ì...i messaggi diventano sempre più grandi...forse è quel desc?:?


  • User

    Ciao,
    hai qualche problemino con l'HTML.
    Se usi firefox, ti consiglierei di installare Html Validator e vedere gli errori che riporta.
    Ciao
    Bruno


  • User Attivo

    il desc serve a tutt altro. sono una frana ma di questo ti puoi fidare. sono le fondamenta del linguaggio. serve solo,in caso di 10 messaggi ad esempio, a leggere dal decimo al primo e no dal primo al decimo


  • Super User

    Sostituisci questa:

    echo "<center><h2><font face="comic sans ms" color="blue">$nome_utente, in data $data_inserimento, ha scritto:<h2></font><br><br><font
    color="lime">$testo_messaggio<br><br><br></font><hr>";

    Con questa:

    echo "<center><h2><font face="comic sans ms" color="blue">$nome_utente, in data $data_inserimento, ha scritto:</h2></font><br><br><font
    color="lime">$testo_messaggio<br><br><br></font><hr>";


  • User

    si si si trattava proprio di un tag non chiuso!che stupido!XD


  • Super User

    Segnalo come risolto 🙂