andyah
Goto Top

PHP Script speichert Daten nicht

Hi NG,

folgendes Script:
<?php
$anrede = $_POST["anrede"];  
$vorname = $_POST["vorname"];  
$nachname = $_POST["nachname"];  
$strasse = $_POST["strasse"];  
$plz = $_POST["plz"];  

$email = $_POST["email"];  
$kommentar = $_POST["kommentar"];  

$daten = "adressen";  

$db = mysql_connect ("localhost", "root", "","adressen");  

$sql_befehl = "INSERT INTO mitgieder(                
                    Anrede,
					Vorname,
					Nachname,
					strasse,
					plz;
					ort,
					EMail,
					Kommentar)
					
					values(
					
					'$anrede',  
					'$vorname',  
					'$nachname',  
					'$strasse',  
					'$plz',  
					''  
					'$email',  
					'$kommentar')";  
					
$result = mysql_query($sql_befehl);

if ($result)
{
   echo "gespeichert";  
}
else
{
   echo "nicht gespeichert";  
}

mysql_close($db);
			
?>
speichert keine Daten, obwohl es Datenbank, Tabelle und Datenfelder gibt.
Auch die übergebenen Formulardaten (Namen der Eingabefelder) sind richtig.

Wo liegt da der Fehler?

Gruß
Andy

Content-Key: 203382

Url: https://administrator.de/contentid/203382

Printed on: April 20, 2024 at 03:04 o'clock

Mitglied: 16568
16568 Mar 15, 2013 at 08:37:54 (UTC)
Goto Top
Hallo Andy,

Zitat von @AndyAh:
Hi NG,

scheinbar verwechselst Du uns hier...


Wo ist Dein Error-Reporting?

$result = mysql_query($sql_befehl);

if ($result)
{
echo "gespeichert";
}
else
{
echo "nicht gespeichert";

Das ist keine Fehlerbehandlung, die Dich weiterführen würde...

$connect = @mysql_connect($db_server,$db_user,$db_pass);
mysql_query("hier ein query");
if(!$connect){echo mysql_error();}
$select_db = @mysql_select_db($db_name);
if(!$select_db){echo mysql_error();}

So, dann guckste mal, was da falsch gelaufen ist face-wink


Lonesome Walker
Member: SlainteMhath
SlainteMhath Mar 15, 2013 at 08:41:26 (UTC)
Goto Top
Moin,

1. Dein Script ist anfällig für SQL Injection Angriff - siehe http://de.wikipedia.org/wiki/SQL-Injection - wende bitte mysql_real_escape() auf alle $_POST Variablen bevor du sie in SQL Queries verwendest.

2. HASt Du das Anzeigen von Fehlern (in der php.ini) aktiviert?

3. versuchs mal mit
$db = mysql_connect ("localhost", "root", "","adressen") or die "keine verbindung!";  

4. Und verwendet doch bitte code-tags im forum, das macht das ganze lesbarerer.

lg,
Slainte
Member: nxclass
nxclass Mar 15, 2013 updated at 08:57:00 (UTC)
Goto Top
evtl. liegst ja nur an der Schreibweise:
- INSERT INTO mitgieder
+ INSERT INTO mitglieder

http://php.net/manual/de/book.pdo.php
Member: AndyAh
AndyAh Mar 15, 2013 at 09:02:57 (UTC)
Goto Top
Hi Lonesome Walker,

beide Abfrage ergaben leider kein Ergebnis. Es erfolgte keine Ausgabe.

Gruß
Andy
Member: AndyAh
AndyAh Mar 15, 2013 at 09:08:34 (UTC)
Goto Top
Hi Slainte,

dein Vorschlag ergab leider die Fehlermeldung:

Parse error: syntax error, unexpected '"keine verbindung!"' (T_CONSTANT_ENCAPSED_STRING) in C:\xampp\htdocs\PHP\datenbank.php on line 20

Gruß
Andy
Mitglied: 110135
110135 Mar 15, 2013 at 09:16:58 (UTC)
Goto Top
Hallo,

mal abgesehen von den Fehlern, die schon genannt wurden:
$sql_befehl = "INSERT INTO mitgieder(  
Anrede,
Vorname,
Nachname,
strasse,
plz;
ort,
EMail,
Kommentar)

Schau doch bitte mal genau hinter plz. Das Semikolon hat da nichts zu suchen.
Was auch noch besser wäre: Du postest du jetzt mal dein komplettes, angepasstes und kaputt gefummeltes Script. Die letzte Fehlermeldung:
Parse error: syntax error, unexpected '"keine verbindung!"' (T_CONSTANT_ENCAPSED_STRING) in C:\xampp\htdocs\PHP\datenbank.php on line 20

lässt auf einiges schließen - nur finde ich den betreffenden Code dafür nicht!

Gruß Florian
Member: SlainteMhath
SlainteMhath Mar 15, 2013 updated at 09:20:19 (UTC)
Goto Top
Zitat von @AndyAh:
Hi Slainte,

dein Vorschlag ergab leider die Fehlermeldung:

Parse error: syntax error, unexpected '"keine verbindung!"' (T_CONSTANT_ENCAPSED_STRING) in
C:\xampp\htdocs\PHP\datenbank.php on line 20
Selber mal einen Block in die PHP-Doku werfen ist nicht, oder?


$db = mysql_connect(...) or die(mysql_error())

/EDIT:

Noch mehr Tippfehler gefunden:
'$anrede',  
'$vorname',  
'$nachname',  
'$strasse',  
'$plz',  
''  
'$email',  
'$kommentar')";  

da fehlt ein Komma.

Also: bring mal den code in Ordnung, und poste dann das ganze nochmal, diesmal mit code-tags, falls es immer noch nicht geht.
Member: Biber
Biber Mar 15, 2013 at 09:31:44 (UTC)
Goto Top
[OT]
Zitat von @SlainteMhath:
...poste dann das ganze nochmal, diesmal mit code-tags, falls es immer noch nicht geht.
Bitte in jedem Fall mit Code-Tags posten, nicht nur bei Fehlern.
Danke

Biber
[/OT]
Member: AndyAh
AndyAh Mar 20, 2013 at 11:59:59 (UTC)
Goto Top
Hi,

hab es selber hinbekommen.

Gruß
Andy