teddyfreek79
04-01-2005, 11:57
Salve,
sto cercando di inserire un modulo GuestBook in un CMS in php di creazione di un mio amico.
Ecco il codice di "guestbook.php":
<?php
include("includes/config.php");
$pagename = array(
"GuestBook" => basename($PHP_SELF)
);
$main = "
<div style=\"font-size: 24pt;\" align=\"center\">GuestBook</div><br><br>
<form name=\"ModuloGuest\" action=\"elabora_guest.php\" method=\"post\">
<table>
<tr>
<td>Il tuo nome:</td><td><input type=\"text\" name=\"nome_utente\" size=\"30\" maxlenght=\"40\"></td>
</tr>
<tr>
<td valign=\"top\">Il tuo messaggio:</td><td><textarea name=\"testo\" cols=\"30\" rows=\"6\"></textarea></td>
</tr>
<tr>
<td></td>
<td colspan=\"2\"><input type=\"submit\" value=\"Invia il messaggio!\"><input type=\"reset\" name=\"Reset\" value=\"Cancella\">
</td>
</tr>
</table>
</form>
";
include("output.php");
?>
Questo, invece, il codice di elabora_guest.php
<?php
$connessione=mysql_connect("localhost","root","");
$selezione_db=mysql_select_db("my_database", $connessione );
$nome_utente_formattato=strip_tags($HTTP_POST_VARS[nome_utente]);
$messaggio_formattato=strip_tags($HTTP_POST_VARS[testo]);
$inserimento=mysql_query("insert into guestbook (nome_utente, messaggio, data_ora) values(\"$nome_utente_formattato\",\"$messaggio_formattato\", now())");
$main = "
Messaggio inviato con successo. <a href=\"read_guest.php\">Leggi</a> il GuestBook.
";
?>
Infine, il codice di read_guest.php
<?php
include("includes/config.php");
$pagename = array(
"GuestBook" => basename($PHP_SELF)
);
$connessione=mysql_connect("localhost", "root", "");
$selezione_db=mysql_select_db("my_vaghaye", $connessione);
$lettura_risultati=mysql_query("SELECT nome_utente, messaggio, date_format(data_ora, '%d/%m/%Y - ore %H:%i:%s') as data_formattata FROM guestbook ORDER BY data_ora");
if(mysql_num_rows($lettura_risultati)>0) {
while($scatola_temporanea=mysql_fetch_array($lettura_risultati)){
$nome_utente=$scatola_temporanea[nome_utente];
$testo_messaggio=nl2br($scatola_temporanea[messaggio]);
$data_inserimento=$scatola_temporanea[data_formattata];
$main = "
L'utente <b>$nome_utente</b>, in data <b>$data_inserimento</b>, ha scritto:<br><br>$testo_messaggio<br><br>
";
}
}
else{
$main = "
Nessun messaggio presente nel GuestBook..Vuoi <a href=\"guestbook.php\">inserire un messaggio</a>?
";
}
include("output.php");
?>
"$main" indica la tabella dove deve essere sputato l'output [il CMS divide la struttura della pagina in "menu", "header" e "main"....
Il problema riscontrato è che scrivendo il messaggio e inviandolo con "Invia il messaggio", il risultato è che non mi viene visualizzato il testo "Il messaggio è stato inviato" ma una banale pagina bianca.
Inoltre visualizzando la pagina "read_guest.php" appare a schermo _solo_ l'ultimo messaggio inserito nel guestbook.
Con PhpMyAdmin, tuttavia, i record vengono sempre salvati senza alcun tipo di problema.
Cosa c'e' di sbagliato?
Grazie. [e scusate la lunghezza del post]
sto cercando di inserire un modulo GuestBook in un CMS in php di creazione di un mio amico.
Ecco il codice di "guestbook.php":
<?php
include("includes/config.php");
$pagename = array(
"GuestBook" => basename($PHP_SELF)
);
$main = "
<div style=\"font-size: 24pt;\" align=\"center\">GuestBook</div><br><br>
<form name=\"ModuloGuest\" action=\"elabora_guest.php\" method=\"post\">
<table>
<tr>
<td>Il tuo nome:</td><td><input type=\"text\" name=\"nome_utente\" size=\"30\" maxlenght=\"40\"></td>
</tr>
<tr>
<td valign=\"top\">Il tuo messaggio:</td><td><textarea name=\"testo\" cols=\"30\" rows=\"6\"></textarea></td>
</tr>
<tr>
<td></td>
<td colspan=\"2\"><input type=\"submit\" value=\"Invia il messaggio!\"><input type=\"reset\" name=\"Reset\" value=\"Cancella\">
</td>
</tr>
</table>
</form>
";
include("output.php");
?>
Questo, invece, il codice di elabora_guest.php
<?php
$connessione=mysql_connect("localhost","root","");
$selezione_db=mysql_select_db("my_database", $connessione );
$nome_utente_formattato=strip_tags($HTTP_POST_VARS[nome_utente]);
$messaggio_formattato=strip_tags($HTTP_POST_VARS[testo]);
$inserimento=mysql_query("insert into guestbook (nome_utente, messaggio, data_ora) values(\"$nome_utente_formattato\",\"$messaggio_formattato\", now())");
$main = "
Messaggio inviato con successo. <a href=\"read_guest.php\">Leggi</a> il GuestBook.
";
?>
Infine, il codice di read_guest.php
<?php
include("includes/config.php");
$pagename = array(
"GuestBook" => basename($PHP_SELF)
);
$connessione=mysql_connect("localhost", "root", "");
$selezione_db=mysql_select_db("my_vaghaye", $connessione);
$lettura_risultati=mysql_query("SELECT nome_utente, messaggio, date_format(data_ora, '%d/%m/%Y - ore %H:%i:%s') as data_formattata FROM guestbook ORDER BY data_ora");
if(mysql_num_rows($lettura_risultati)>0) {
while($scatola_temporanea=mysql_fetch_array($lettura_risultati)){
$nome_utente=$scatola_temporanea[nome_utente];
$testo_messaggio=nl2br($scatola_temporanea[messaggio]);
$data_inserimento=$scatola_temporanea[data_formattata];
$main = "
L'utente <b>$nome_utente</b>, in data <b>$data_inserimento</b>, ha scritto:<br><br>$testo_messaggio<br><br>
";
}
}
else{
$main = "
Nessun messaggio presente nel GuestBook..Vuoi <a href=\"guestbook.php\">inserire un messaggio</a>?
";
}
include("output.php");
?>
"$main" indica la tabella dove deve essere sputato l'output [il CMS divide la struttura della pagina in "menu", "header" e "main"....
Il problema riscontrato è che scrivendo il messaggio e inviandolo con "Invia il messaggio", il risultato è che non mi viene visualizzato il testo "Il messaggio è stato inviato" ma una banale pagina bianca.
Inoltre visualizzando la pagina "read_guest.php" appare a schermo _solo_ l'ultimo messaggio inserito nel guestbook.
Con PhpMyAdmin, tuttavia, i record vengono sempre salvati senza alcun tipo di problema.
Cosa c'e' di sbagliato?
Grazie. [e scusate la lunghezza del post]