So Leute das ist die Fortsetzung von >>> Teil 1 <<<
Jetz werden wir Beiträge erstellen und sie wieder löschen. Auf das aussehen habe ich keinen Wert gelegt das könnt ihr selber machen wie ihr wollt.
Da wir das alles in einer Datei haben wollen werden wir mit einem Switch arbeiten und mit Pseudofunktionen.
Na dann fangen wir mal an:
Zuerst erstellen wir unser Grundgerüst
HTML-Code:
<html>
<head>
<title>Unser Gästebuch</title>
</head>
<body>
<?php
?>
</body>
</html>
zwischen die <?php und ?> kommt unser PHP. Anfangen müssen wir damit eine Verbindung zur Datenbank herzustellen dazu definieren wir ein paar Variablen:
PHP-Code:
$host = 'localhost';
$password = 'ddl-board';
$user = 'newbe';
$db = 'gästebuch';
$connect = mysql_connect($host, $user, $password);
$base = mysql_select_db($db, $connect);
Mit $connect stellen wir eine Verbindung zu MySql her und mit $base zur jeweiligen Datenbank
Mehr Infos zu den functionen findet ihr hier
Nun erstellen wir vorerst einen leeren Switch() da wir noch keine functionen haben:
PHP-Code:
switch($_GET['display']) {
}
$_GET['display'] wird uns später sagen welche function er ausführen soll
Mehr Infos zu den functionen findet ihr hier
Nun erstellen wir unsre erste function() und zwar das Formular:
PHP-Code:
function eintrag() {
echo "<p>
<form action='buch.php?display=do_eintrag' method='post'>
Name:<input type='text' name='name' >
E-Mail:<input type='text' name='mail' >
Beitrag:<textarea name='beitrag'></textarea>
<input type='submit' value='abschicken'>
</form>
</p>";
}
Das tragen wir nun auch in unseren Switch() ein der dann so aussieht:
PHP-Code:
switch($_GET['display']) {
case 'view' :
eintrag();
break;
default:
eintrag();
break;
}
das default wird dann eingesetzt wenn keines der cases zutrifft.
Jetz werden wir das natürlich noch verarbeiten so das es in unere MySql Datenbank steht. Ja jetz wird es spannend! Dazu erstellen wir diese function:
PHP-Code:
function do_eintrag() {
$name = $_POST['name'];
$email = $_POST['mail'];
$beitrag = $_POST['beitrag'];
$sql ="INSERT INTO beiträge (Name,E_Mail,Beitrag,Datum)
VALUES ('$name','$email','$beitrag', NOW())";
$result = mysql_query($sql) OR die (mysql_error());
}
So das schöne an SQL seht ihr schon: Es spricht für sich selbst! Man kann leicht nachvollziehen was hier geschieht. Mit INSERT INTO sagt ihr in welche Spalten etwas geschriben werden sollen und mit VALUE sagt ihr was in die Spalten geschrieben werden soll.
Mit der function mysql_query sendet ihr dann den Befehl zur Datenbank
Mehr Infos zu den functionen findet ihr
Nun müssen wir wieder unseren Switch aktuallisieren der nun so aussieht:
PHP-Code:
switch($_GET['display']) {
case 'view' :
eintrag();
break;
case 'do_eintrag':
do_eintrag();
eintrag();
break;
default:
eintrag();
break;
}
Und jetz wollt ihr natürlich auch sehn was ihr da Eingetragen habt. Sprich wir kommen zum auslesen der Daten, der Grund warum wir das alles hier machen. Wie immer eine neue function:
PHP-Code:
function view() {
$sql ="SELECT *
FROM beiträge";
$result = mysql_query($sql);
while($data = mysql_fetch_assoc($result)){
echo"
<p>Name:".$data['Name']." E-Mail:".$data['E_Mail']."<br>
hat geschrieben am ".$data['Datum']."<br>
Beitrag:".$data['Beitrag']."
Aktion:<a href='buch.php?display=delete&id=".$data['ID']."'>Löschen</a><br><hr>";
}
}
Mit SELECT können wir sagen welche Spalten wir haben wollen. Mit de * sage ich das ich alles haben möchte.
Nun gebe ich die daten in einer while() Schleife mittels mysql_fetch_assoc() aus.
Mehr Infos zu den functionen findet ihr hier
Ihr wisst es bestimmt schon! Wir müssen unseren switch erweitern:
PHP-Code:
switch($_GET['display']) {
case 'view' :
eintrag();
view();
break;
case 'do_eintrag':
do_eintrag();
eintrag();
view();
break;
default:
eintrag();
view();
break;
}
Und weil ich heute gute laune habe zeige ich euch noch wie man einen datensatz löscht. DieseOption sollte aber nur im admin Bereich zur Verfügung stehen:
PHP-Code:
function delete() {
$id = $_GET['id'];
$sql ="DELETE FROM beiträge
WHERE ID = '$id'";
$result = mysql_query($sql);
}
Hier hilft uns die ID den Richten Datensatz in der DB zu finden und zu löschen. Sehr einfach und simpel dieser Vorgang.
Der switch sieht nun so aus und ist komplett:
PHP-Code:
switch($_GET['display']) {
case 'view' :
eintrag();
view();
break;
case 'do_eintrag':
do_eintrag();
eintrag();
view();
break;
case 'delete':
delete();
eintrag();
view();
break;
default:
eintrag();
view();
break;
}
Nun könnt ihr noch das HTML anpassen und das ganze mit CSS Übersichtlich machen
In Teil 3 werde ich euch dann noch zeigen wie man die Beiträge bearbeitet.
Bei Fragen könnt ihr es gerne Posten oder ->
Viele Grüße
Pee-ooH
Teil 3 kommt