1.5k Aufrufe
in Skripte(PHP,ASP,Perl...) von Einsteiger_in (43 Punkte)
Ich habe mir einen kleinen PHP-Skript nachgeschrieben, mit dem per URL Daten in
einen Datenbank eingetragen werden sollen.

<?php
include("dbconnect.php");


$artikelnummer = $_POST["artikelnummer"];
$bestelldatum = $_POST["bestelldatum"];


$eintragen = mysql_query("INSERT INTO lyon (artikelnummer, bestelldatum)
VALUES ('$artikelnummer', '$bestelldatum')");
?>

Nach Eingabe der URL
http://.../eintragen.php?artikelnummer=1234567890&bestelldatum=09-08-2011

Wird zwar jeweils ein Datensatz eingetragen, dieser ist aber leer.
Wo liegt der Fehler?

3 Antworten

0 Punkte
von Einsteiger_in (43 Punkte)
Danke ich habe es bereits selbst herausgefunden. Wer kommt drauf?
:-)
0 Punkte
von supermax Experte (4.8k Punkte)
Wohl $_GET und $_POST verwechselt.

Nebenbei solltest du auf jeden Fall die Werte mit mysql_real_escape_string() escapen, bevor du sie in die DB einträgst, also
$artikelnummer = mysql_real_escape_string( $_GET["artikelnummer"] );
$bestelldatum = mysql_real_escape_string( $_GET["bestelldatum"] );
0 Punkte
von tomham Mitglied (407 Punkte)

$artikelnummer = $_POST["artikelnummer"];
$bestelldatum = $_POST["bestelldatum"];


$eintragen = mysql_query("INSERT INTO lyon (artikelnummer, bestelldatum)
VALUES ('$artikelnummer', '$bestelldatum')");


Kan so garnicht funktionieren ...
wenn dann
$artikelnummer=$_POST['artikelnummer'];
$bestelldatum=$_POST['bestelldatum']; /* im POST ein einfaches Hochkomma*/
$sql="INSERT INTO lyon (artikelnummer, bestelldatum) VALUES ("$artikelnummer", "$bestelldatum"); /* hier dann doppelte Hochkommas */
$eintragen=mysql_query ($sql);

Und wie Supermax schon sagte hast du POST und GET vertauscht ... im URL was mitgeben wird über $_GET['field1'] ausgelesen ...
LG Tom

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...