Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP Script speichert Daten nicht

Frage Entwicklung PHP

Mitglied: AndyAh

AndyAh (Level 2) - Jetzt verbinden

15.03.2013, aktualisiert 26.03.2013, 1620 Aufrufe, 9 Kommentare

Hi NG,

folgendes Script:
01.
<?php 
02.
$anrede = $_POST["anrede"]; 
03.
$vorname = $_POST["vorname"]; 
04.
$nachname = $_POST["nachname"]; 
05.
$strasse = $_POST["strasse"]; 
06.
$plz = $_POST["plz"]; 
07.
 
08.
$email = $_POST["email"]; 
09.
$kommentar = $_POST["kommentar"]; 
10.
 
11.
$daten = "adressen"
12.
 
13.
$db = mysql_connect ("localhost", "root", "","adressen"); 
14.
 
15.
$sql_befehl = "INSERT INTO mitgieder(               
16.
                    Anrede, 
17.
					Vorname, 
18.
					Nachname, 
19.
					strasse, 
20.
					plz; 
21.
					ort, 
22.
					EMail, 
23.
					Kommentar) 
24.
					 
25.
					values( 
26.
					 
27.
					'$anrede', 
28.
					'$vorname', 
29.
					'$nachname', 
30.
					'$strasse', 
31.
					'$plz', 
32.
					'' 
33.
					'$email', 
34.
					'$kommentar')"; 
35.
					 
36.
$result = mysql_query($sql_befehl); 
37.
 
38.
if ($result
39.
40.
   echo "gespeichert"
41.
42.
else 
43.
44.
   echo "nicht gespeichert"
45.
46.
 
47.
mysql_close($db); 
48.
			 
49.
?>
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
Mitglied: 16568
15.03.2013 um 09:37 Uhr
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


Lonesome Walker
Bitte warten ..
Mitglied: SlainteMhath
15.03.2013 um 09:41 Uhr
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
01.
$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
Bitte warten ..
Mitglied: nxclass
15.03.2013, aktualisiert um 09:57 Uhr
evtl. liegst ja nur an der Schreibweise:
01.
- INSERT INTO mitgieder 
02.
+ INSERT INTO mitglieder
http://php.net/manual/de/book.pdo.php
Bitte warten ..
Mitglied: AndyAh
15.03.2013 um 10:02 Uhr
Hi Lonesome Walker,

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

Gruß
Andy
Bitte warten ..
Mitglied: AndyAh
15.03.2013 um 10:08 Uhr
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
Bitte warten ..
Mitglied: flow.ryan
15.03.2013 um 10:16 Uhr
Hallo,

mal abgesehen von den Fehlern, die schon genannt wurden:
01.
$sql_befehl = "INSERT INTO mitgieder( 
02.
Anrede, 
03.
Vorname, 
04.
Nachname, 
05.
strasse, 
06.
plz; 
07.
ort, 
08.
EMail, 
09.
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
Bitte warten ..
Mitglied: SlainteMhath
15.03.2013, aktualisiert um 10:20 Uhr
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?


01.
$db = mysql_connect(...) or die(mysql_error())
/EDIT:

Noch mehr Tippfehler gefunden:
01.
'$anrede', 
02.
'$vorname', 
03.
'$nachname', 
04.
'$strasse', 
05.
'$plz', 
06.
'' 
07.
'$email', 
08.
'$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.
Bitte warten ..
Mitglied: Biber
15.03.2013 um 10:31 Uhr
[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]
Bitte warten ..
Mitglied: AndyAh
20.03.2013 um 12:59 Uhr
Hi,

hab es selber hinbekommen.

Gruß
Andy
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
PHP
PHP Daten "Streamen" (3)

Frage von Roadrunner777 zum Thema PHP ...

Batch & Shell
gelöst PowerShell Script Move-Item nach x Tagen (5)

Frage von lupolo zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...