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

Formular ausgabe wird nicht in der DB gespeichert

Frage Entwicklung Datenbanken

Mitglied: mkapate

mkapate (Level 1) - Jetzt verbinden

22.06.2012 um 12:05 Uhr, 2603 Aufrufe, 8 Kommentare

Hallo,

habe eine DB mit Xampp angelegt.

Diese lasse ich mir über ...

[php]
<?php
require_once ('0konfiguration.php');
$db_link
= mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);
?>

<?php

$sql = " SELECT * FROM kundenadressen ";
$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . mysql_error());
}

echo '<table border="0">';
while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
{

echo "<tr>";

// hier kommt noch was



echo "<td>". $zeile['id'] . "</td>";
echo "<td>". $zeile['firma'] . "</td>";
echo "<td>". $zeile['anrede'] . "</td>";
echo "<td>". $zeile['nachname'] . "</td>";
echo "<td>". $zeile['vorname'] . "</td>";
echo "<td>". $zeile['anschrift'] . "</td>";
echo "<td>". $zeile['plz'] . "</td>";
echo "<td>". $zeile['ort'] . "</td>";
echo "<td>". $zeile['handy'] . "</td>";
echo "<td>". $zeile['festnetz'] . "</td>";
echo "<td>". $zeile['email'] . "</td>";
echo "<td>". $zeile['aufgaben'] . "</td>";

echo "</tr>";
}
echo "</table>";
mysql_free_result( $db_erg );
?>


<a href="tabelleKundeneingabe.php">neue Adresse anlegen</a>


[/php]

.... ausgeben.

Per klick auf neue Adresse anlegen öffnet sich eine neue Seite

Auf der neu Seite,
gebe ich dann einen neuen Kunden ein ...

[html]
<form action="tabelleKundeneingabeErfolgreich.php" method="POST" >

<p>Firma:<br />
<input type="text" name="firma" value="" size="60" />
</p>

<p>Anrede:<br />
<input type="radio" name="anrede" value="Frau" /> Frau
<input type="radio" name="anrede" value="Herr" /> Herr
</p>

<p>Nachname:<br />
<input type="text" name="nachname" value="" size="60" />
</p>

<p>Vorname:<br />
<input type="text" name="vorname" value="" size="60" />
</p>

<p>Anschrift:<br />
<input type="text" name="anschrift" value="" size="60" />
</p>

<p>PLZ:<br />
<input type="text" name="plz" value="" size="15" />
</p>

<p>Ort:<br />
<input type="text" name="ort" value="" size="60" />
</p>

<p>Handy:<br />
<input type="varchar" name="handy" value="" size="60" />
</p>

<p>Festnetz:<br />
<input type="varchar" name="festnetz" value="" size="60" />
</p>

<p>EMail:<br />
<input type="text" name="email" value="" size="60" />
</p>

<p>Aufgaben:<br />
<input type="text" name="aufgaben" value="" size="60" />
</p>

<input type="Submit" name="tabelleKundeneingabeErfolgreich.php" value="speichern" />
</form>


[/html]

diese Daten,
sollen mit dem betätigen des Speicher Button
an die nächste seite übermittelt ....

[php]

<?php

ini_set('display_errors' , 'On');
error_reporting(E_ALL);

require_once ('0konfiguration.php');
$db_link
= mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);
?>

<?php
$sql="INSERT INTO kundenadressen ('firma', 'anrede', 'nachname' , 'vorname' , 'anschrift' , 'plz' ,
'ort' , 'handy' , 'festnetz' , 'email' , 'aufgaben')
VALUES (
'{$_POST['firma']}',
'{$_POST['anrede']}',
'{$_POST['nachname']}',
'{$_POST['vorname']}',
'{$_POST['anschrift']}',
'{$_POST['plz']}',
'{$_POST['ort']}',
'{$_POST['handy']}',
'{$_POST['festnetz']}',
'{$_POST['email']}',
'{$_POST['aufgaben']}');
?>

[/php]

und von dort dann in die DB gespeichert werden.

Bekomme aber auf der letzten seite diese Fehlermeldung

[quote]

Parse error: syntax error, unexpected $end in C:\xampp\htdocs\tabelleKundeneingabeErfolgreich.php on line 26

[/quote]


Habe ich einen Denkfehler?
Wäre toll wenn mal jemand rüberschauen kann.

Danke! Gruß Verena
Mitglied: SlainteMhath
22.06.2012 um 12:49 Uhr
Moin,

Parse error: syntax error, unexpected $end in C:\xampp\htdocs\tabelleKundeneingabeErfolgreich.php on line 26
Habe ich einen Denkfehler?
Nein, einen Syntax-Fehler. Was steht denn in der datei in Zeile 26?

Und als Tipp nebenbei:
Die Verwendung von POST variablen ala
01.
$_POST['firma']
direkt und ungeprüft in SQL Statements führt zu SQL Injection Attacken: http://en.wikipedia.org/wiki/SQL_injection

lg,
Slainte

P.S. Bnutz' doch bitte code-tags, dann kann man deinen Sourcecode auch ohne Kopfschmerzen lesen
Bitte warten ..
Mitglied: mkapate
22.06.2012 um 13:34 Uhr
Zitat von SlainteMhath:
Und als Tipp nebenbei:
Die Verwendung von POST variablen ala
01.
> $_POST['firma'] 
02.
> 

gut ok.

also hier nochmal, abfrage oder ausgabe der Kundendaten in eine Tabelle

01.
<?php 
02.
	require_once ('0konfiguration.php'); 
03.
	$db_link  
04.
	= mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT); 
05.
?> 
06.
 
07.
<?php 
08.
 
09.
	$sql = " SELECT * FROM kundenadressen "; 
10.
	$db_erg = mysql_query( $sql ); 
11.
if ( ! $db_erg ) 
12.
13.
    die('Ungültige Abfrage: ' . mysql_error()); 
14.
15.
 
16.
 
17.
 
18.
echo '<table border="0">'; 
19.
while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC)) 
20.
21.
  
22.
   echo "<tr>"; 
23.
 
24.
    // hier kommt noch was :) 
25.
 
26.
 
27.
 
28.
    echo "<td>". $zeile['id'] . "</td>"; 
29.
    echo "<td>". $zeile['firma'] . "</td>"; 
30.
    echo "<td>". $zeile['anrede'] . "</td>"; 
31.
    echo "<td>". $zeile['nachname'] . "</td>"; 
32.
    echo "<td>". $zeile['vorname'] . "</td>"; 
33.
    echo "<td>". $zeile['anschrift'] . "</td>"; 
34.
    echo "<td>". $zeile['plz'] . "</td>"; 
35.
    echo "<td>". $zeile['ort'] . "</td>"; 
36.
    echo "<td>". $zeile['handy'] . "</td>"; 
37.
    echo "<td>". $zeile['festnetz'] . "</td>"; 
38.
    echo "<td>". $zeile['email'] . "</td>"; 
39.
    echo "<td>". $zeile['aufgaben'] . "</td>"; 
40.
    
41.
    echo "</tr>"; 
42.
43.
echo "</table>"; 
44.
mysql_free_result( $db_erg ); 
45.
?> 
46.
 
47.
                 <a href="tabelleKundeneingabe.php">neue Adresse anlegen</a> 
48.
 
wechsel auf nächste Seite,
zur neu Kunden eingabe

01.
 
02.
 
03.
<form action="tabelleKundeneingabeErfolgreich.php" method="POST" > 
04.
 
05.
<p>Firma:<br /> 
06.
<input type="text" name="firma" value="" size="60" /> 
07.
</p> 
08.
 
09.
<p>Anrede:<br /> 
10.
<input type="radio" name="anrede" value="w" /> Frau 
11.
<input type="radio" name="anrede" value="m" /> Herr 
12.
</p> 
13.
 
14.
<p>Nachname:<br /> 
15.
<input type="text" name="nachname" value="" size="60" /> 
16.
</p> 
17.
 
18.
<p>Vorname:<br /> 
19.
<input type="text" name="vorname" value="" size="60" /> 
20.
</p> 
21.
 
22.
<p>Anschrift:<br /> 
23.
<input type="text" name="anschrift" value="" size="60" /> 
24.
</p> 
25.
 
26.
<p>PLZ:<br /> 
27.
<input type="text" name="plz" value="" size="15" /> 
28.
</p> 
29.
 
30.
<p>Ort:<br /> 
31.
<input type="text" name="ort" value="" size="60" /> 
32.
</p> 
33.
 
34.
<p>Handy:<br /> 
35.
<input type="varchar" name="handy" value="" size="60" /> 
36.
</p> 
37.
 
38.
<p>Festnetz:<br /> 
39.
<input type="varchar" name="festnetz" value="" size="60" /> 
40.
</p> 
41.
 
42.
<p>EMail:<br /> 
43.
<input type="text" name="email" value="" size="60" /> 
44.
</p> 
45.
 
46.
<p>Aufgaben:<br /> 
47.
<input type="text" name="aufgaben" value="" size="60" /> 
48.
</p> 
49.
 
50.
<input type="Submit" name="tabelleKundeneingabeErfolgreich.php" value="speichern" /> 
51.
</form> 
52.
 
53.
*****************************************************************
mit Speicher Button dann auf die Ausgabeseite

wo ich gerde fest gestellt habe,
das ein " fehlte.


01.
<?php 
02.
 
03.
ini_set('display_errors' , 'On'); 
04.
error_reporting(E_ALL); 
05.
 
06.
	require_once ('0konfiguration.php'); 
07.
	$db_link  
08.
	= mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT); 
09.
?> 
10.
 
11.
<?php 
12.
 
13.
ini_set('display_errors' , 'On'); 
14.
error_reporting(E_ALL); 
15.
 
16.
    require_once ('0konfiguration.php'); 
17.
    $db_link  
18.
    = mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT); 
19.
?> 
20.
 
21.
<?php 
22.
$sql="INSERT INTO kundenadressen (firma, anrede, nachname , vorname , anschrift , plz ,  
23.
                  ort , handy , festnetz , email , aufgaben) 
24.
        VALUES ( 
25.
        '{$_POST['firma']}', 
26.
        '{$_POST['anrede']}', 
27.
        '{$_POST['nachname']}',  
28.
        '{$_POST['vorname']}', 
29.
        '{$_POST['anschrift']}',  
30.
        '{$_POST['plz']}', 
31.
        '{$_POST['ort']}', 
32.
        '{$_POST['handy']}', 
33.
        '{$_POST['festnetz']}', 
34.
        '{$_POST['email']}', 
35.
        '{$_POST['aufgaben']}')";  
36.
?> 
37.
 
Jetzt bekomme ich zwar keine Fehlermeldung mehr
aber in die DB wird immer noch nicht geschrieben.

Was gibt es noch für möglichkeiten
oder andere ansätze um in die DB zu speichern?

Danke! Gruß Verena
Bitte warten ..
Mitglied: SlainteMhath
22.06.2012 um 13:38 Uhr
Also entweder du hast Code weggelassen, oder du führst den Inhalt von $sql tatsächlich nicht am MySQL Server aus
Bitte warten ..
Mitglied: mkapate
22.06.2012 um 13:44 Uhr
Zitat von SlainteMhath:
Also entweder du hast Code weggelassen, oder du führst den Inhalt von $sql tatsächlich nicht am MySQL Server aus



Was würde ich den deiner Meinung nach weg lassen?
Bitte warten ..
Mitglied: SlainteMhath
22.06.2012 um 13:47 Uhr
Was würde ich den deiner Meinung nach weg lassen?
01.
mysql_query($sql);
Bitte warten ..
Mitglied: mkapate
22.06.2012 um 13:54 Uhr
Zitat von SlainteMhath:
01.
> mysql_query($sql); 
02.
> 

Halt mich jetzt bitte nicht für doof,
aber wo soll das den dann stehen?

01.
<?php 
02.
 
03.
ini_set('display_errors' , 'On'); 
04.
error_reporting(E_ALL); 
05.
 
06.
	require_once ('0konfiguration.php'); 
07.
	$db_link  
08.
	= mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT); 
09.
?> 
10.
 
11.
<?php 
12.
 
13.
ini_set('display_errors' , 'On'); 
14.
error_reporting(E_ALL); 
15.
 
16.
    require_once ('0konfiguration.php'); 
17.
    $db_link  
18.
    = mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT); 
19.
?> 
20.
 
21.
<?php 
22.
 
23.
mysql_query $sql="INSERT INTO kundenadressen (firma, anrede, nachname , vorname , anschrift , plz ,  
24.
                  ort , handy , festnetz , email , aufgaben) 
25.
        VALUES ( 
26.
        '{$_POST['firma']}', 
27.
        '{$_POST['anrede']}', 
28.
        '{$_POST['nachname']}',  
29.
        '{$_POST['vorname']}', 
30.
        '{$_POST['anschrift']}',  
31.
        '{$_POST['plz']}', 
32.
        '{$_POST['ort']}', 
33.
        '{$_POST['handy']}', 
34.
        '{$_POST['festnetz']}', 
35.
        '{$_POST['email']}', 
36.
        '{$_POST['aufgaben']}')";  
37.
?> 
38.
 
Bitte warten ..
Mitglied: SlainteMhath
22.06.2012 um 14:06 Uhr
Halt mich jetzt bitte nicht für doof,
aber wo soll das den dann stehen?
In Zeile 37, vor dem "?>".
Du baust zwar dein INSERT in der Variablen $sql zusammen, aber sendest den Inhalt nicht an den MySQL Server. Oder wie soll der wissen was er machen soll?
Bitte warten ..
Mitglied: mkapate
22.06.2012 um 14:22 Uhr
Zitat von SlainteMhath:
In Zeile 37, vor dem "?>".
Du baust zwar dein INSERT in der Variablen $sql zusammen, aber sendest den Inhalt nicht an den MySQL Server. Oder wie soll der
wissen was er machen soll?


Ick werd ja irre...

Danke, es funktioniert
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Verschlüsselung & Zertifikate
Zugriff auf mySQL-DB mit ODBC und SSL (2)

Frage von Titan24 zum Thema Verschlüsselung & Zertifikate ...

Entwicklung
gelöst Daten aus Formular sicher übertragen (2)

Frage von schneerunzel zum Thema Entwicklung ...

Windows Server
gelöst Ms sql management studio 2012 kann auf 2012r2 die WSUS DB nicht finden (5)

Frage von XPFanUwe zum Thema Windows Server ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (31)

Frage von Maik82 zum Thema Linux Netzwerk ...

Exchange Server
gelöst Bestehende eMails autoamatisch weiterleiten (22)

Frage von metal-shot zum Thema Exchange Server ...

Switche und Hubs
LAG zwischen SG300-Switches macht Probleme. Wer weiß Rat? (20)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...