Top
Phpuniverset logo
 

INDHOLD

Forside

Job annoncer

Tips og Tricks

Konkurrence

Downloads

Dokumenter

PHP bog shop

Forum

Online udviklere


Propelcom

ARTIKLER

CSS

Diverse

E-handel / annoncer

Grafik

Html

Internet

Javascript

Linux

PHP/MySQL

Programmer

Flash

Søgemaskiner

Windows

C / C++


INFO

Information

Annoncering

Kontakt

Lav din helt egen gæstebog!

Forside Kategori PHP/MySQL Lav din helt egen gæstebog!




 

I denne artikel for i mulighed for at lærer at lave en god og sikker gæstebog.

Lad os begynde.

<html>

<head>

<title>Min egen gæstebog!</title>

</head>

<body>
<!--
Vi laver gæstebogen i en fil.
Vi laver 2 link, et til hvor man skrive i gæstebogen, og et til hvor man kan se i gæstebogen.
Med php kan man bruge $_GET til at lave flere sider med i EN fil.
Det er meget smart :-).
-->
<a href="gaestbog.php?valg=skriv">Skriv i gæstebogen</a> - <a href="gaestbog.php?valg=kig">Kig i gæstebogen</a><br><br>

<?php // PHP starter.
if($_GET[valg] == "skriv") { // Vi tester med if om brugeren har trykket på 'skriv i gæstebogen' hvis brugeren ikke har det viser den ikke.
// afslutter PHP, nu kan vi skrive html igen
?>

<!--
Her laver vi en html form, hvor action er = gaestbog.php?valg=skrivok
Når brugeren har trykket på submit knappen går den til gaestbog.php?valg=skrivok
Og vi laver sådan at når brugeren trykker kommer den hen til en $_GET ligesom ovenover.
-->
<form action="gaestbog.php?valg=skrivok" method="POST">
<b>Navn:</b> <br>
<input type="text" name="navn" size="20"><br>
<b>E-mail:</b> <br>
<input type="text" name="email" size="20"><br>
<b>Besked:</b><br>
<textarea name="besked" rows="7" cols="24"></textarea><br>
<input type="submit" value="Send">
</form>

<?php // PHP starter igen
} // afslutter '{' ovenfor.
if($_GET[valg] == "skrivok") { // Laver en GET igen.

if($_POST[navn] == "") {
echo("Du skal udfylde feltet <b>Navn</b>");
} else { // Vi tester om feltet Navn er udfyldt, hvis feltet ikke er udfyldt, siger php: Du skal udfylde feltet Navn. Hvis ikke går den videre.

if($_POST[email] == "") {
echo("Du skal udfylde feltet <b>E-mail</b>");
} else { // Vi tester om feltet email er udfyldt

if($_POST[besked] == "") {
echo("Du skal udfylde feltet <b>Besked</b>");
} else { // Vi tester om der er skrevet en besked.

if(strlen($_POST[besked]) < "10") {
echo("Det var en kort besked");
} else { // Her tester vi om brugeren har skrevet en besked på over 10 karektere. Hvis brugeren ikke har det siger den: Det var en kort besked, hvis brugerens besked var over 10 karektere går den videre.

if(is_numeric($_POST[navn])) {
echo("Jeg har aldrig hørt om tal, i et navn!");
} else { // Her tester vi med kommandoen is_numeric() om brugeren har skrevet tal i sit navn. Hvis brugeren har det, siger php: Jeg har aldrig hørt om tal, i et navn! Hvis ikke går den bare videre.

$dato = date('d/m/Y H:i:s'); // Her kalder vi datoen og klokken. d står for day, m for month, y for year, h for hour, i for minuts, s for seconds. Altså dag, måned, år, time, minut, sekund. Datoen bliver så gemt i virablen $dato
$ip = $_SERVER[REMOTE_ADDR]; // Her kalder vi vedkomnes IP, og gemmer ipen i virablen $ip
$navn = htmlspecialchars($_POST[navn]); // Vi gemmer $_POST[navn] i virablen $navn, og bruger kommandoen htmlspecialchars() for at sørge for at brugeren ikke kan bruge html i dette felt. Hvis brugeren har gjort det, bliver det bare til tekst.
$email = htmlspecialchars($_POST[email]); // Vi gemmer $_POST[email] i virablen $email
$besked = htmlspecialchars($_POST[besked]); // Vi gemmer $_POST[besked] i virablen $besked

if(!get_magic_quotes_gpc()) { // Vi laver en sikkerheds foranstaltning. Den vil jeg ikke til at fortælle om, hvis du er interesseret i at vide hvad den gør kan du søge på php.net
$navn = addslashes($navn);
$email = addslashes($email);
$besked = addslashes($besked);
}

include("db_connection.php"); // Vi inkludere php filen db_connection.php i vores fil, den sørge for der er forbindelse til databasen.
mysql_query("INSERT INTO gaestbog (dato, ip, navn, email, besked) VALUES ('$dato', '$ip', '$navn', '$email', '$besked')") or die(mysql_error()); // Vi sætter alle brugerens POSTER ind i databasen.
echo("Tak for din besked!");
}
}
}
}
}
} // Vi afslutter alle vores '{' med '}'

if($_GET[valg] == "kig") {

include("db_connection.php");
$hent = mysql_query("SELECT * FROM gaestbog ORDER BY id DESC") or die(mysql_error()); // vi henter dataene fra databasen
if(mysql_num_rows($hent)) { // tester om der er noget i databasen.
while($vis = mysql_fetch_array($hent)) { // vi bruger while til at sørge for at den henter ALLE dataene ud fra databasen, vi gemmer alle dataene i virablen $vis
?>
<table border="0" width="100%">
<tr>
<td>
<table border="0" width="100%">
<tr>
<td><b><? echo $vis[navn]; ?></b> Skriver den. <i><? echo $vis[dato]; ?></i> :</td>
</tr>
<tr>
<td><? echo nl2br($vis[besked]); ?></td>
</tr>
<tr>
<td>Kontakt:<br> <a href="mailto:<? echo $vis[email]; ?>"><? echo $vis[email]; ?></a></td>
</tr>
</table>
</td>
</tr>
</table>
<hr style="border: 1px dotted #000080" color="#000080">
<?
}
} else {
echo("Der blev intet fundet i databasen.");
}
}
?>

</body>

</html>

Gem denne fil som gaestbog.php.
Vi er stadig ikke færdige :-).
Vi mangler stadig en SQL fil, og en database connection fil.

database connection filen:

<?
mysql_connect("HOST", "BRUGER", "KODE");
mysql_select_db("DB_BRUGER");
?>

HUSK. du skal udfylde, host, bruger, kode og db_bruger. Hvis du ikke ved hvad du skal skrive i forskellige sider må du spørge din hostmaster.
Gem filen som db_connection.php

Så er vi snart færdige, nu mangler vi bare SQL filen:

CREATE TABLE `gaestbog` (
`id` int(4) unsigned NOT NULL auto_increment,
`dato` varchar(35) NOT NULL default '',
`ip` varchar(50) NOT NULL default '',
`navn` varchar(100) NOT NULL default '',
`email` varchar(100) NOT NULL default '',
`besked` longtext NOT NULL,
PRIMARY KEY (`id`))
TYPE=MyISAM;

Gem denne fil som sql.sql eller sql.txt.

Så er vi færdige.
Hvis du vil se et eksempel på gæstebogen så kig på
www.Dounie.dk/testsiden/gaestbog.php



Skrevet af: Henrik Nielsen | Dato : 2005-07-26 18:5 | Læst : 48780 gange | Print

Din kommentar og karakter til artiklen

Din karakter:

1

2

3

4

5

6

7

8

9

10

Kommentar:

Log ind for at give en karakter og kommentar.

Kommentarer og karakterer til artiklen

 


4/10

"Det virker ikke helt på min side? (:"

Camilla | 02.02.2010, 19:35

 


9/10

"Efter jeg fandt ud af man skulle kalde den gastbog og ikke gaestEbog, så virkede det hele 100%! Kanon god guide :) "

Jesper Bruun | 22.12.2007, 14:06

 


9/10

"God og brugbar instruktion"

Briand Nielsen | 30.07.2006, 01:32

 


9/10

"God og brugbar instruktion"

Briand Nielsen | 30.07.2006, 01:31

 


10/10

"Jeg syntes den er god! Da jeg ikke selv er mester i php, så syntes jeg den her hjalp lidt på det"

Kenneth Larsen | 12.03.2006, 10:59

 


6/10

"kanon, men næste gang kan du gøre det sådan at du skrive et stykke kode, og bag efter skriver du, hvorfor du gør som du gør. og det er meget fristne for de dovne hunde, at bare copy paste din kode. men det er nok den eneste kritik jeg har, ellers forklare du det godt. mvh. rudik"

rudik | 15.02.2006, 13:59

 

Send Artikel/anmeldelse til: phpuni@phpuniverset.dk

Tilbage til oversigt

FORUM

Nyeste forum indlæg :

PHP/Opencart import module

Opencart/php import modul hjælp

Lækkert kontor / kontorfællesskab i Helsingør

Opdatering af PHP

Vurdering af hjemmeside

Nyeste forum svar :

Joomla som CMS

Android programmering

Grafik problemer

Prissammenligningsside

Jeg yder fremover ikke support!

 

MEDLEM

LOGIN ER IKKE MULIGT, MENS VI LAVER NYT SITE
 

NYHEDSBREV

Nyhedsbrev

Tilmeld dig vores nyhedsbrev og modtag nyheder om nye scripts og tips samt om mange andre nye tiltag på Phpuniverset.dk


 

© Copyright 2000 Propelcom Phpuniverset's politik om personlige oplysninger, artikler & Koder Phpuniverset er optimeret til Mozilla 1024 * 768 Phpuniverset version: 3.0 beta
Webhost : Ignesco.dk - android talk & help

Bund