Gästbok i PHP
Denna artikel visar hur du gör en gästbok i PHP. Det är inte alls svårt att göra en gästbok i PHP. Vi ska bygga en funktionsbaserad gästbok som är så simpel som möjligt. Användare ska kunna skriva inlägg i gästboken med namn och valfri text. I denna artikel kommer jag inte täcka hur du ansluter med PHP mot en databas. Nu kör vi!
Vi börjar med att skapa en funktion för att skapa nya inlägg. Vi kallar den PostMessage och den ska ta ett namn och meddelandet som parametrar. Funktionen kommer lägga in ett nytt meddelande i databasen.
Vi börjar med att skapa en funktion för att skapa nya inlägg. Vi kallar den PostMessage och den ska ta ett namn och meddelandet som parametrar. Funktionen kommer lägga in ett nytt meddelande i databasen.
<?php
function PostMessage( $name, $message )
{
$name = mysql_real_escape_string( $name );
$message = mysql_real_escape_string( $message );
mysql_query( "INSERT INTO messages SET name = '{$name}', message = '{$message}', created = NOW()" );
}
?>
Nu har vi en färdig funktion för att lägga in nya meddelanden i databasen. Gästboken är långt från färdig. Vi fortsätter med en till funktion för att hämta ut alla inlägg till vår PHP-gästbok.
<?php
function GetMessages()
{
$query = mysql_query( "SELECT name, message, created FROM messages ORDER BY created DESC" );
$messages = array();
while( $item = mysql_fetch_assoc( $query ) )
$messages[] = $item;
return $messages;
}
?>
Nu behöver vi ett formulär där användaren kan skriva sitt meddelande.
<form action="#" method="post">
Namn: <input name="name" type="text" /><br />
Meddelande: <textarea rows="5" cols="30" name="message"></textarea><br />
<input type="submit" name="submit" value="Svara" />
</form>
De största delarna är nu färdiga. Nu behöver vi bara spara inlägget och skriva ut alla meddelanden på skärmen. Nedan finns den färdiga koden, inklusive funktionerna vi byggt tidigare, för att göra just detta.
<?php
function GetMessages()
{
$query = mysql_query( "SELECT name, message, created FROM messages ORDER BY created DESC" );
$messages = array();
while( $item = mysql_fetch_assoc( $query ) )
$messages[] = $item;
return $messages;
}
function PostMessage( $name, $message )
{
$name = mysql_real_escape_string( $name );
$message = mysql_real_escape_string( $message );
mysql_query( "INSERT INTO messages SET name = '{$name}', message = '{$message}', created = NOW()" );
}
if( isset( $_POST["submit"] ) )
{
PostMessage( $_POST["name"], $_POST["message"] );
}
?>
<form action="#" method="post">
Namn: <input name="name" type="text" /><br />
Meddelande: <textarea rows="5" cols="30" name="message"></textarea><br />
<input type="submit" name="submit" value="Svara" />
</form>
<?php
$messages = GetMessages();
foreach( $messages AS $message ):
?>
<div>
Av: <?=$message["name"];?> skrivet <?=$message["created"];?><br />
<?=$message["message"];?>
</div>
<?php
endforeach;
?>
Nu är vår gästbok, skriven i PHP, färdig. Vi har inte täckt hur du skapar en databas. Databasen måste ha en tabell, som heter "messages", med kolumnerna: "name", "message" och "created" för att koden ovan ska fungera.
Du kan själv bygga ut denna gästbok med begränsat antal meddelanden som visas, flersidig gästbok, möjlighet att svara på andras inlägg och mycket annat. Lycka till med din gästbok skriven i PHP!
Du kan själv bygga ut denna gästbok med begränsat antal meddelanden som visas, flersidig gästbok, möjlighet att svara på andras inlägg och mycket annat. Lycka till med din gästbok skriven i PHP!
