anisomorpha
Neues Mitglied
Hallo zusammen,
erstmal die Vorwarnung, dass ich Laie in Bezug auf PHP/MySQL bin und deswegen nicht so bewandert bin wie manch anderer hier.
Mein Problem besteht bei einem Formular welches die Daten in eine MySQL Datenbank übergeben soll. Irgendwo muss ich im PHP einen Fehler haben aber ich bin im Moment wohl zu blind.
MySQL Tabelle wurde wie folgt gebildet:
Script sieht wie folgt aus:
Das Formular soll die Anmeldedaten wie Name, Adresse etc. in die Datenbank speichern. Mir ist bewusst, dass die Formulare z.T. noch als "test" gekennzeichnet sind aber ich versuche im Moment erstmal nur Text zu speichern und gebe auch keine Zahlen beim Test ein.
Trotzdem bekomme ich die Fehlermeldung "Der Eintrag wurde nicht gespeichert" und es landet nichts in der Datenbank.
Kann mir vielleicht jemand helfen bzw. einen Anschubser geben?
Danke im Voraus.
LG, Robert
erstmal die Vorwarnung, dass ich Laie in Bezug auf PHP/MySQL bin und deswegen nicht so bewandert bin wie manch anderer hier.
Mein Problem besteht bei einem Formular welches die Daten in eine MySQL Datenbank übergeben soll. Irgendwo muss ich im PHP einen Fehler haben aber ich bin im Moment wohl zu blind.
MySQL Tabelle wurde wie folgt gebildet:
PHP:
CREATE TABLE `user` (
`id` INT(10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`vorname` VARCHAR(100 ) NOT NULL ,
`name` VARCHAR(100 ) NOT NULL ,
`street` VARCHAR(100 ) NOT NULL ,
`zip` VARCHAR(100 ) NOT NULL ,
`city` VARCHAR(100 ) NOT NULL ,
`country` VARCHAR(100 ) NOT NULL ,
`phone` VARCHAR(100 ) NOT NULL ,
`email` VARCHAR(100 ) NOT NULL ,
`tables` VARCHAR(100 ) NOT NULL ,
`comment` VARCHAR(100 ) NOT NULL
) ENGINE = MYISAM ;
Script sieht wie folgt aus:
PHP:
<?php
$datenbank_host = 'localhost';
$datenbank_user = 'xxx';
$datenbank_passwort = 'xxx';
$datenbank_name = 'xxx';
if (!isset($_POST['senden'])) $_POST['senden'] = '';
if (!isset($_POST['vorname'])) $_POST['vorname'] = '';
if (!isset($_POST['name'])) $_POST['name'] = '';
if (!isset($_POST['street'])) $_POST['street'] = '';
if (!isset($_POST['zip'])) $_POST['zip'] = '';
if (!isset($_POST['city'])) $_POST['city'] = '';
if (!isset($_POST['country'])) $_POST['country'] = '';
if (!isset($_POST['phone'])) $_POST['phone'] = '';
if (!isset($_POST['email'])) $_POST['email'] = '';
if (!isset($_POST['tables'])) $_POST['tables'] = '';
if (!isset($_POST['comment'])) $_POST['comment'] = '';
if ($_POST['senden']
!= '' AND $_POST['vorname']
!= '' AND $_POST['name']
!= '' AND $_POST['street']
!= '' AND $_POST['zip']
!= '' AND $_POST['city']
!= '' AND $_POST['country']
!= '' AND $_POST['phone']
!= '' AND $_POST['email']
!= '' AND $_POST['tables']
!= '' AND $_POST['comment']
!= '') {
$link = @mysql_connect($datenbank_host, $datenbank_user, $datenbank_passwort);
if (!$link) { die('keine Verbindung möglich: ' .
mysql_error());
}
$db_selected =
@mysql_select_db($datenbank_name, $link);
if (!$db_selected) {
die ('Kann '.$datenbank_name.' nicht benutzen : ' . mysql_error());
}
$sql_insert = "INSERT INTO `user`
(`vorname`,`name`,`street`,`zip`,`city`,`country`,`phone`,`email`,`tables`,`comment`)
VALUES
('".mysql_escape_string($_POST['vorname'])."','".mysql_escape_string($_POST['name'])."','".mysql_escape_string($_POST['street'])."','".mysql_escape_string($_POST['zip'])."',
'".mysql_escape_string($_POST['city'])."','".mysql_escape_string($_POST['country'])."','".mysql_escape_string($_POST['phone'])."','".mysql_escape_string($_POST['email'])."',
'".mysql_escape_string($_POST['tables'])."''".mysql_escape_string($_POST['comment'])."');";
if (@mysql_query($sql_insert, $link) != false) {
echo 'Der Eintrag wurde gespeichert!';
$_POST['vorname'] = '';
$_POST['name'] = '';
$_POST['street'] = '';
$_POST['zip'] = '';
$_POST['city'] = '';
$_POST['country'] = '';
$_POST['phone'] = '';
$_POST['email'] = '';
$_POST['tables'] = '';
$_POST['comment'] = '';
} else {
echo 'Der Eintrag wurde nicht gespeichert!';
}
@mysql_close($link);
}
echo '<form action="'.htmlspecialchars($_SERVER['PHP_SELF']).'" method="post">';
echo ' Vorname: <input type="text" name="vorname" value="'.htmlspecialchars($_POST['vorname']).'"/><br/>';
echo ' Name: <input type="text" name="name" value="'.htmlspecialchars($_POST['name']).'"/><br/><br/>';
echo ' Strasse: <input type="text" name="street" value="'.htmlspecialchars($_POST['street']).'"/><br/><br/>';
echo ' PLZ: <input type="text" name="zip" value="'.htmlspecialchars($_POST['zip']).'"/><br/><br/>';
echo ' Stadt: <input type="text" name="city" value="'.htmlspecialchars($_POST['city']).'"/><br/><br/>';
echo ' Land: <input type="text" name="country" value="'.htmlspecialchars($_POST['country']).'"/><br/><br/>';
echo ' Phone: <input type="text" name="phone" value="'.htmlspecialchars($_POST['phone']).'"/><br/><br/>';
echo ' Email: <input type="text" name="email" value="'.htmlspecialchars($_POST['email']).'"/><br/><br/>';
echo ' Anzahl Tische: <input type="text" name="tables" value="'.htmlspecialchars($_POST['tables']).'"/><br/><br/>';
echo ' Anmerkung: <input type="text" name="comment" value="'.htmlspecialchars($_POST['comment']).'"/><br/><br/>';
echo ' <input type="submit" name="senden" value="absenden"/>';
echo '</form>';
?>
Das Formular soll die Anmeldedaten wie Name, Adresse etc. in die Datenbank speichern. Mir ist bewusst, dass die Formulare z.T. noch als "test" gekennzeichnet sind aber ich versuche im Moment erstmal nur Text zu speichern und gebe auch keine Zahlen beim Test ein.
Trotzdem bekomme ich die Fehlermeldung "Der Eintrag wurde nicht gespeichert" und es landet nichts in der Datenbank.
Kann mir vielleicht jemand helfen bzw. einen Anschubser geben?
Danke im Voraus.
LG, Robert