Hej Claus.
Jeg er ikke så god til at hente data fra filer, så mit bud her er til og fra en MySQL database. Du har en ved din udbyder, hvis du ikke selv har sat din server op. Ellers skal du bare installere den.
htmlkoden skal se sådan her ud.:
<form action="anden_side.php" method="post">
Navn <input type="text" name="user_name" /><br />
Besked <textarea name="message"></textarea>
<input type="hidden" name="spam" />
</form>
Du kan lege lidt med CSS'en på den, så det ser pænere ud.
Du skal nu oprette en tabel i din database der hedder kommentarer, hvor der er 4 felter i.
Den første skal hedde id og være INT og primary key. Dvs. at den er unik. Hvis du bruger phpMyAdmin (Det burde du), så er der en lille radio-button helt ude til højre, som du skal trykke på. Hvis du holder musen hen over, så skriver den primary.
Den næste du skal lave skal hedde navn og være VARCHAR, længde skal være 30.
Den næste skal hedde besked og være TEXT.
Den sidste skal hedde tid og være INT.
Du skal kun angive lændge på VARCHAR, de andre bliver bare default.
Dit PHP-dokument skal se sådan her ud.:
<?php
$conn = mysql_connect("localhost","brugernavn","password");
$db = mysql_select_db("databasenavn");
$user = addslashes($_POST["user_name"]);
$msg = addslashes($_POST["message"]);
$spam = $_POST["spam"];
$time = time();
if(isset($user) && isset($msg) && empty($spam)){
$insert = mysql_query("INSERT INTO kommentarer(navn,besked,tid) VALUES('$user','$msg','$time')") or die(mysql_error());
if($insert){
echo "
Din kommentar er nu sat ind i databasen
<script type='text/javascript'>
setTimeout(\\"window.location='viewMsg.php'\\",2500);
</script>
";
}
}
else{
header("location: viewMsg.php");
}
mysql_close($conn);
Så vil PHP-dokumentet sætte de forskellige ting ind i databasen og sende tilbage bagefter.
Så er det tid til at lave den side der skal vise kommentarerene.
viewMsg.php
<?php
$conn = mysql_connect("localhost","brugernavn","password");
$db = mysql_select_db("databasenavn");
$getMsg = mysql_query("SELECT * FROM kommentarer") or die(mysql_error());
while($showMsg = mysql_fetch_assoc($getMsg)){
echo "
<div>" . stripslashes($showMsg["navn"]) . " - " . date("d-m-Y H:i:s",$showMsg["tid"]) . "</div>
<div>" . stripslashes($showMsg["besked"]) . "</div><br /><br />
";
}
mysql_close($conn);
Det er muligt jeg har glemt noget. Jeg har siddet og skrevet den her i tekstfeltet, så jeg har ikke haft codecompletion på.
Håber du kan bruge det til noget.
Hilsen mcardle