dedlfix: affenformular mit datenbank eingabe und ausgabe

Beitrag lesen

echo $begrüßung;

Ich hab also versucht mit folgendem Affenformular [...]

Ich seh da kein Affenformular. Dafür fehlen typische Bestandteile eines solchen.

<?php session_start ();
$connectionid = mysql_connect('localhost', 'root', '');
$db_selected = mysql_select_db('hobiundroth', $connectionid);

Ist es nicht sinvoller, wenn du sogleich auf Fehler prüfst, statt erstmal weiterzumachen und dann erst irgendwann zu prüfen ob die Voraussetzungen für eine Weiterarbeit gegeben sind?
Wenn die Connection nicht aufgebaut werden konnte, lohnt sich keine Datenbankauswahl.

  $datum = $\_POST["Datum"];  
  $zeit = $\_POST["Zeit"];  
  $ort = $\_POST["Ort"];  
  $adresse = $\_POST["Adresse"];  

Dieses Umkopieren bringt keine Pluspunkte. Du erhöhst damit nur die Komplexität durch zusätzliche Variablen und als Resultat sieht man dem Inhalt nicht mal mehr seine Herkunft als Benutzereingabe an.

if (!$db_selected) {
     die ('Kann hobiundroth nicht benutzen : ' . mysql_error());
}
else {

Abgesehen davon, dass die() keine Benutzerfreundliche Art ist, auf Fehler zu reagieren, ist das else unnötig. Entweder das Script stirbt wegen eines Fehlers, dann ist alles nachfolgende irrelevant, oder es ist nicht gestorben, dann kommt es zwangsläufig an dem im else stehenden Code vorbei.

  $sql = "INSERT INTO agenda(Datum, Zeit, Ort, Adresse) VALUES ($datum, $zeit, $ort, $adresse)";  
  mysql\_query($sql,$connectionid);  

Und wo ist deine Fehlerbehandlung an der Stelle? Ist das SQL-Statement, das du hier zusammenbaust korrekt? So ohne Anführungszeichen um anzunehmenderweise nicht-nummerische Werte? Und vor allem so ganz ohne kontextgerechte Behandlung der Werte, so dass du dir eine SQL-Injection-Lücke einbaust? Vertraust du etwa auf PHPs Feature Magic Quotes?

if (!$connectionid) {
die('Verbindung nicht möglich : ' . mysql_error());

Du bist doch schon weiter oben gestorben, wenn die Verbindung nicht da ist. Doppelt sterben zu wollen ist auch nicht besser.

$q = mysql_query("SELECT Datum, Zeit, Ort, Adresse FROM agenda");
while($r = mysql_fetch_assoc($q)) {

PS: auf die Überprüfung der eingegebenen Werte wird vorerst noch verzichtet, da ich erstmal das Grundgerüst zum laufen bringen möchte.

Eine Inhaltsprüfung ist im Prinzip etwas optionales. Wichtiger ist immer eine kontextgerechte Behandlung wann immer du irgendwelche Werte irgendwo einfügst. Denn die Prüfung soll eigentlich nur fachliche Fehler feststellen. Es bleiben dann immer noch Möglichkeiten mit gewünschten oder ungewünschten Werten sich mindestens Syntaxfehler in SQL-Statements oder HTML-Code oder wo immer du die Werte einfügst einzubauen.

echo "$verabschiedung $name";