admin Founder


Registrato: Oct 03, 2008 Messaggi: 261
|
Inviato: Dom Ott 26, 2008 3:01 pm Oggetto: Guida per creare un semplice GuestBook (MySQL SUpport) |
|
|
******************************************************************************
* *
* Guida per la creazione di un guestbook in PHP *
* *
* di Mirko Palomba *
* *
******************************************************************************
In questa guida spieghero' come poter creare un piccolo guestbook utilizzando il mitico PHP ed il database MySQL.
Partiamo dalla creazione del form per l'immissione dei messaggi.
#vi inserisci.php
| Codice: |
<!-- AMBIENTE EDITOR VI-->
<html>
<body bgcolor=#999999>
<h3><center><font color="#0000bb">Invia un messaggio</font></center></h3><br>
<table bgcolor=#aaaaaa width=40% align="center">
<tr>
<td>
<!-- Iniziamo a creare il form che portera' alla pagina inserito.php -->
<form name="immissione" enctype="text/plain" method="GET" action="inserito.php">
<input name="nome-utente" type="text" maxlength=30> Nome utente<br><br>
Data:
<?php
$data=system("date");
?>
<br><br>
<fieldset>
<legend>Messaggio</legend>
<label><textarea name="messaggio" type="text" maxlength=1999 cols="50" rows="13"></textarea></label>
</fieldset>
<input type="submit" value="invia">
<input type="reset" value="cancella">
</form>
<!-- fine del form, mando i dati alla pagina che li deve elaborare -->
</table>
<br><br>
<center>
<!-- si presume che la pagina per l'immisione di questi dati provenga da un index, se non e' cosi' cancellate le prossime tre righe -->
<!-- CUT se non volete puntare all'index -->
<form action="index.php" name="index">
<input type="submit" value="index">
</form>
<!-- /CUT -->
<!-- visualizza il guestbook -->
<form action="guestbook.php" name="inserisci">
<input type="submit" value="Guestbook">
</form>
</center>
</body>
</html>
<!-- /AMBIENTE EDITOR VI-->
|
Salvata questa pagina passiamo alla scrittura della prossima che si occupera' di collegarsi al database e di mandargli i dati appena inseriti nel form. Verra' inoltre presentata una bozza del messaggio appena inviato.
#vi inserito.php
| Codice: | <!-- AMBIENTE EDITOR VI -->
<html>
<body bgcolor=#999999>
<h3><center><font color="#0000bb">Messaggio inviato al database</font></center></h3><br><br>
<table bgcolor=#aaaaaa width=80% align="center">
<tr>
<td>
Data di invio:
<?php
/* cominciamo ad inserire i dati per collegarsi al server MySQL, ovviamente possono essere diversi da quelli che propongo io*/
$utente="mysql";
$password="password";
$db="guestbook";
// ci colleghiamo al server
mysql_connect("localhost:3306:/tmp/mysql.sock",$utente,$password);
// selezioniamo il database su cui lavorare
@mysql_select_db($db) or die( "Unable to select database");
/* prendiamo i dati passati dalla pagina precedente e le mettiamo in delle variabili facilmente elaborabili dal PHP */
$data=system("date");
$nom_ut=$_GET['nome-utente'];
$mess=$_GET['messaggio'];
/* la nostra dolce query che ci permette di inserire i dati nel database */
$query = "INSERT INTO guestbook VALUES ('','$data','$nom_ut','$mess')";
// effettuiamo l'operazione della query e chiudiamo il database
mysql_query($query);
mysql_close();
?>
<!-- abbiamo finito di inserire i dati nel database e ne facciamo una breve visualizzazione -->
<br>
Da:
<?php
echo "$nom_ut";
?>
<br><br>
Corpo del messaggio inviato:<br>
<?php
echo "$mess";
?>
</td>
</tr>
</table>
<center>
<br><br>
<!-- stesso discorso della pagina precedente: le 3 righe successive si possono togliere se non servono -->
<form action="index.php" name="index">
<input type="submit" value="index">
</form>
<form action="inserisci.php" name="inserisci">
<input type="submit" value="Invia altro messaggio">
</form>
</center>
<center>
<form action="guestbook.php" name="inserisci">
<input type="submit" value="Guestbook">
</form>
</center>
</body>
</html>
<!-- /AMBIENTE EDITOR VI-->
|
Ed ora tattara', taratata'!!! Ecco la pagina del guestbook!
#vi guestbook.php
| Codice: | <!-- AMBIENTE EDITOR VI-->
<html>
<body bgcolor=#999999>
<br><h3><center><font color="#0000bb">Guestbook!</font></center></h3>
<h5><center><font color="#0000bb">Powered by: Mirko Palomba</font></center></h5><br>
<table bgcolor=#aaaaaa width=80% align="center" cellspacing=5 cellpadding=5 border=3>
<?php
// definiamo i soliti dati per il collegamento al server
$utente="mysql";
$password="password";
$db="guestbook";
// ci colleghiamo al server
mysql_connect("localhost:3306:/tmp/mysql.sock", $utente, $password);
// selezioniamo il database
@mysql_select_db($db) or die( "Unable to select database");
// definiamo la query per visualizzare in modo ordinato i dati del database
$query="SELECT * FROM `guestbook` WHERE 1 ORDER BY id DESC";
// mandiamo la query e salviamo il risultato in $result
$result=mysql_query($query);
/* mettiamo nella variabile $num il numero di righe del database che servira' per l'estrazione dei dati */
$num=mysql_numrows($result);
// chiudiamo il database
mysql_close();
/* per rendere diversi i colori in background dei messaggi ci serviamo della variabile $colore. Appunto di vita dell'autore: quella sera avevo appena finito di cenare e bere del vino e sentendomi un po cerebroleso non mi e' venuto niente di meglio in mente per fare questo switch di bgcolor, ma alla fine non ce ne frega niente, tanto funzica! */
$colore=0;
$i=0;
while ($i < $num) {
if ($colore==0) {
echo "<tr><td bgcolor=#aaaaaa><font color=\"blue\">Data di invio:</font>";
// selezioniamo in $result la riga $i di "data"
$data=mysql_result($result,$i,"data");
echo $data;
echo "<br><font color=\"red\">Utente:</font>";
// selezioniamo in $result la riga $i di "utente"
$data=mysql_result($result,$i,"utente");
echo $data;
echo "<br><br><font color=\"blue\">Messaggio:</font><br>";
// selezioniamo in $result la riga $i di "messaggio"
$data=mysql_result($result,$i,"messaggio");
echo $data;
echo "</td></tr>";
$colore=$colore+1;
}
else {
echo "<tr><td bgcolor=#bbbbbb><font color=\"blue\">Data di invio:</font>";
// selezioniamo in $result la riga $i di "data"
$data=mysql_result($result,$i,"data");
echo $data;
echo "<br><font color=\"red\">Utente:</font>";
// selezioniamo in $result la riga $i di "utente"
$data=mysql_result($result,$i,"utente");
echo $data;
echo "<br><br><font color=\"blue\">Messaggio:<br></font>";
// selezioniamo in $result la riga $i di "messaggio"
$data=mysql_result($result,$i,"messaggio");
echo $data;
echo "</td></tr>";
$colore=$colore-1;
}
$i++;
}
?>
</table><br>
<center>
<form action="index.php" name="index">
<input type="submit" value="index">
</form>
<form action="inserisci.php" name="inserisci">
<input type="submit" value="Invia altro messaggio">
</form>
</center>
</body>
</html>
<!-- /AMBIENTE EDITOR VI-->
|
Finalmente abbiamo partorito il nostro guestbook! Non vi resta che personalizzarlo con i colori che piu' vi aggradano.
Buon hacking!
Mirko "TheAlchemist" Palomba _________________ D3vil-C0de Crew => http://d3vilc0de.org
My Spaces => http://kinginfet.135.it
My Tool Cracker => http://totalcracker.135.it
My Dj Site => http://djkinginfet.135.it |
|