PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP Script Datenbank


Ph03n!X
2006-11-19, 15:58:28
habe hier ein Problem schreibe gerade ein PHP Script um auf eine Datenbank zugreifen zu können und um sie mit Daten zufüllen .


<?php
//Öffnen der Datenbank

$link = mysql_pconnect('127.0.0.1','root','')



// Laden der Datenbank

$db_selected = mysql_select_db('gaestebuch', $link);
if (!$db_selected)
{

// Falls Datenbank nicht gelesen werden kann, Fehlermeldung ausgeben
die ('Das Gästebuch konnte nicht geöffnet werden : ' . mysql_error());
}


//Daten in der Datenbank speichern
mysql_query() INSERT INTO gaestebuch(ID, Name, E-Mail, Url, Kommentare) VALUES ('$id', '$name', 'E-Mail', '$Url', '$Kommentare')


?>

wie schreibe in den mysql_query() Befehl richtig das er mit dem insert into die Datenbank füllt?

Expandable
2006-11-19, 16:08:22
Ähm... einfach:


mysql_query("INSERT INTO gaestebuch (ID, ...) VALUES('" . $id . "', ...)");


Oder wo ist dein Problem?

Ph03n!X
2006-11-19, 21:22:15
ach hab das zweite Klammerzeichen vergessen !

Danke dir

btw. wie bekomme ich es in PHP hin mir das aktuelle Datum und die aktuelle Urhzeit auszugeben wenn jemand in mein GB schreibt?

geforce
2006-11-19, 21:31:10
Google mal nach Time-Stamp.

MfG Richard ;)

Xanatos
2006-11-19, 21:32:57
http://uk2.php.net/manual/de/ref.datetime.php

Ph03n!X
2006-11-20, 08:50:30
erstmal danke für die ganzen Tipps aber wofür stehen die Hochkommas in der Abfrage ? Die Gänsefüßchen sagen mir was.

Und andere Frage jetzt habe ich ja soweit geschrieben das die Datenbank geöffnet , und in der Datenbank geschrieben werden kann , was muss ich jetzt noch machen ausser eine html Datei fürs Gästebuch zu erstellen ? So das ich Einträge etc. schreiben kann .

PatkIllA
2006-11-20, 09:43:01
Du solltest dir auch noch ein paar Gedanken um SQL-Injection machen, da du ja anscheinend sämtliche Werte ungeprüft übernimmst.

Ph03n!X
2006-11-20, 19:19:39
was zum Teufel ist SQL Injection ? Soll ein kleines Simples PHP Gästebuch sein mit HTML

hab den Code mal etwas verändert

<html>
<head><title>Mein Gästebuch</title></head>
<body bgcolor="#FFFFFF">
<form action="<?php echo $_SERVER['PHP_SELF']?>" method="get">

<p>Ihr Name* :
<input type="text" name="Name">
</p>
<p><br>

Ihre E-Mail - Adresse :
<input type="text" name="homepage">
</p>
<p>Ihre Homepage:
<input type="text" name="url">
</p>
<p>Wohnort :
<input type="text" name="wohnort">
</p>
<p>ICQ :
<input type="text" name="icq">
</p>
<p>MSN :
<input type="text" name="msn">
</p>
<p><br>
Ihr Kommentar* :
<textarea name="Kommentare"></textarea>
</p>
<p> * Pflichtfelder <br>
<br>
<input type="submit" name="valider" value="Send">
</p>

<?
## Hier werden die Daten eingetragen
$DBhost = "localhost";
$DBuser = "root";
$DBpass = "";
$DBName = "gaestebuch";
$table = "gaestebuch";

## Hier wird zu der Datenbank verbunden
mysql_connect($DBhost,$DBuser,$DBpass) or die("Es konnte keine Verbindung hergestellt werden!");
@mysql_select_db("$DBName") or die("Es konnte nicht $DBName ausgewählt werden"); $sqlquery = "SELECT * FROM $table WHERE name = ''";
$result = mysql_query($sqlquery);
$number = mysql_numrows($result);

$i = 0;

## Wenn nichts gefunden wurde (Dann $number unter 1, weil $i gleich 0), es wurde mit dem Roten Befehl die Einträge gezählt.
if ($number < 1) {
print "<CENTER>

Es wurde kein Beitrag gefunden</CENTER>";
}
## Ansonsten wird in einer Schleife die Ergebnisse angezeigt solange es mehr als $i ist
else {
while ($number > $i) {
$name = mysql_result($result,$i,"name");
$email = mysql_result($result,$i,"email");
$homepage = mysql_result($result,$i,"homepage");
print "<p><b>Name:</b> $name<br><b>E-Mail:</b>
$email<br><b>Homepage:</b>
$homepage
";
## mit jedem Eintrag steigt $i damit die Schleife ein Ende hat
$i++;
}
}
?>
</body>
</html>


mit diesem Code kann ich Sachen ins GB eingeben aber sobald ich auf Send drücke passiert noch nix , wie kann ich jetzt proggen das wenn die Felder gefüllt sind mit Daten diese in der Datenabnk gespeichert werden und der KOmmenatr auf der Seite angezeigt wird und bestehen bleibt ? So wie halt bei einem richtigen Gästebuch!

PatkIllA
2006-11-20, 21:37:14
http://de.wikipedia.org/wiki/SQL-Injektion