Forenindex » Programmierung/Entwicklung » PHP und MySQL » Anfänger braucht Hilfe!

Anfänger braucht Hilfe!

Blackheart113
Beiträge gesamt: 2

18. Okt 2004, 17:56
Bewertung:

gelesen: 4378

Beitrag als Lesezeichen
Bestimmt ist es schon tausendmal erklärt worden, ich frag trotzdem:
Ich hab eine wunderschönes Formular in HTML mit FORM ACTION... angelegt (mit Auswahllisten, Checkboxen und einfachen Eingabefeldern).
Wie bekomme ich die vom User eingegebenen Daten nachdem er auf >Abschicken< geklickt hat in meine SQL Datenbank?
Wer kann mir helfen oder sagen wo im Netz das schön erklärt wird?
Vielen Dank!!!

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

18. Okt 2004, 20:49
Bewertung:

gelesen: 4376

Beitrag als Lesezeichen
ich habe das so mit einer einzgen datei gelöst:

<?
if (isset($_POST["senden"])) {

$name = $HTTP_POST_VARS["name"];
$email = $HTTP_POST_VARS["email"];
$homepage = $HTTP_POST_VARS["homepage"];
$report = $HTTP_POST_VARS["report"];

$fehler = 0;

if( $name == "") {
$namefehler = '<b>fehler</b>';
$fehler = 1;
}
if( $email == "") {
$emailfehler = '<b>fehler</b>';
$fehler = 1;
}
if( $report == "") {
$reportfehler = '<b>fehler</b>';
$fehler = 1;
}

if ($fehler){
echo '<b>angaben unvollst&auml;ndig. bitte f&uuml;lle alle felder aus!</b><br><br>';
}
else {
include ("additions/connect.php");
$entry = "INSERT INTO guestbook (time, name, email, homepage, report) VALUES ('".time()."', '$name', '$email', '$homepage', '$report')";
$register = mysql_query($entry);
echo 'hallo <b>';
echo $name;
echo '</b>,<br>vielen dank f&uuml;r deinen eintrag<br><br>';
mysql_close($db);
}
}
else
{
echo '<form name="new_entry" method="post" action="index.php?select=guestbook&entry=new"><table border="0" cellpadding="0" cellspacing="0"><tr><td>name*</td><td><input size="50" name="name" value="';
echo $name;
echo '">';
echo $namefehler;
echo '</td></tr><tr><td>e-mail*</td><td><input type="text" name="email" size="50" maxlength="50" value="';
echo $email;
echo '">';
echo $emailfehler;
echo '</td></tr><tr><td>homepage</td><td><input type="text" name="homepage" size="50" maxlength="50" value="';
echo $homepage;
echo '"></td></tr><tr><td>mitteilung*</td><td><textarea name="report" rows="4" cols="50">';
echo $report;
echo '</textarea>';
echo $reportfehler;
echo '</td></tr><tr><td><input type="submit" name="senden" value="senden"></td><td></td></tr></table></form>';
}
?>

zuerst überpfüfe ich, ob alle felder ausgefüllt sind. wenn ja, so weden die daten in die mysql datenbank geschrieben mit dem befehl INSERT INTO oder das formular wird mit den geschribenen angaben nochmals gezeigt und es erscheint hinter jedem fehlerhaften feld der text 'fehler'

wenn noch fragen sind, schreibe doch nochmals...

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)

Anfänger braucht Hilfe!

Pozor
Beiträge gesamt: 892

18. Okt 2004, 23:06
Bewertung:

gelesen: 4376

Beitrag als Lesezeichen
Hallo pat,

nichts gegen dein Code, doch schmerzt es in meinen Augen,
wenn ich sehe, dass $HTTP_POST_VARS und $_POST[] im selben skript
verwendet werden.

Man sollte, ab PHP 4.1.0, nur noch $_POST, $_GET etc verwenden, da
die HTTP_*_VARS in Zukunft nicht mehr per default
vorhanden sein werden (ab PHP 5.0.0).
So muss bei einem Update das Skript nicht angepasst werden.

Gruss Stefan

http://www.boelsterli.biz

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

19. Okt 2004, 07:22
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
okay...

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)

Anfänger braucht Hilfe!

Anonym
Beiträge gesamt: 22827

19. Okt 2004, 09:44
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
Danke für die schnelle Hilfe.
Und die Datei die du mir genannt hast schreibe ich bei FORM ACTION rein z.B. als eingabe.php mit method="post" oder?

Anfänger braucht Hilfe!

Anonym
Beiträge gesamt: 22827

19. Okt 2004, 14:34
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
OK , mit deinem script hab ich das hinbekommen ! Yippi !!! :-))
Aber wie bringe ich jetzt noch einen Lösch-Link in die letzte Spalte der Datenbank ?

Grüssle
Julia

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

19. Okt 2004, 14:39
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
was verstehst du unter einem Lösch-Link?

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)

Anfänger braucht Hilfe!

Anonym
Beiträge gesamt: 22827

19. Okt 2004, 15:24
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
Hi !
Ich möchte immer in der letzten Spalte der Tabelle einen "Knopf" [Löschen] pro Zeile haben.
Mit dem ich dann Einträge auch wieder löschen kann.
Das wär super wenn Du mir noch diesen "kleinen" Tip geben könntest...

Grüssle
Julia

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

19. Okt 2004, 15:38
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
am besten machst du in der db eine spalte 'id'

und dann kannst du mit dem befehle DELETE und der id diesen datensatz löschen...

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

19. Okt 2004, 16:23
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
ein test ginge so:

DELETE FROM `test` WHERE `id` = '1' AND `report` = 'test' LIMIT 1;

als tipp: ich missbrauche immer phpmyadmin um sql-befehle abzuschreiben...

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)

Anfänger braucht Hilfe!

Pozor
Beiträge gesamt: 892

19. Okt 2004, 16:44
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
Hallo Pat,

guter tipp, ich verwende PHPmyAdmin auch um selbstgeschriebene SQL
querys zu testen.
Noch ein Tipp zu der id.
Erstelle eine ID mit den Attributen auto_increment, so erhält man
eindeutige Schlüssel, was den Vorteil hatt, dass die SQL querys einfacher werden und es KEINE fehlinterpretationen geben kann
(wer garantier dass der Schlüssel id&report immer unique ist?).

somit sieht die SQL query so aus:

$query = "DELETE FROM test WHERE id = '".$id."'";

gruss Pozor

http://www.boelsterli.biz

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

19. Okt 2004, 16:51
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
ich habe natürlich bei mir auch auto_increment eingestellt...

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)

Anfänger braucht Hilfe!

Anonym
Beiträge gesamt: 22827

19. Okt 2004, 16:55
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
Und die Datei die du mir genannt hast schreibe ich bei FORM ACTION rein z.B. als eingabe.php mit method="post" oder?

Anfänger braucht Hilfe!

Blackheart113
Beiträge gesamt: 2

19. Okt 2004, 16:56
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
Danke für die schnelle Hilfe.
Und die Datei die du mir genannt hast schreibe ich bei FORM ACTION rein z.B. als eingabe.php mit method="post" oder?

Anfänger braucht Hilfe!

pat87
Beiträge gesamt: 581

19. Okt 2004, 17:01
Bewertung:

gelesen: 4375

Beitrag als Lesezeichen
also das ist eine datei, die sich selber aufruft. das was du bei action="xy" reinschreibst, so muss die datei auch heissen...

hast du dir schon einen account eingerichtet?

mfg p@
---
so einfach wie möglich, aber nicht einfacher! (albert einstein)