29. maj 2006 - 14:34
Der er
5 kommentarer og
1 løsning
Connection til db
nogle der kan få denne kode til at connecte ordenlidt?
<?
mysql_connect("localhost", "nixx_dk", "******");
mysql_select_db("gaestbog");
?>
Prøv gør sådan her:
$con = mysql_connect("localhost", "nixx_dk", "******");
mysql_select_db("gaestbog", $con);
gaestbog.php ser sådan her ud nu!
<html>
<head>
<title>Min egen gæstebog!</title>
</head>
<body>
<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.
include("db_connection.php");
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
include("db_connection.php");
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>
<? }
den gider ikke at tilføje beskeden i dben?