MySQL Insert (undifend Varíable)

mr-otin

Mitglied
Hallo ,

Ich versuche über ein "INSERT" Daten aus einem Formular (PHP_SELF) in die DB zu schreiben. Leider funktioniert dies nicht so recht. Hier mal der Code:

PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title></title>
</head>
<body>
<form name=threadpost action="<? echo $PHP_SELF?>" method="POST">
<table width="100%"  border="0" cellspacing="0">
  <tr>
    <td width="10%">Firma:</td>
    <td width="90%"><input name="company" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>Name:</td>
    <td><input name="name" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>Strasse:</td>
    <td><input name="street" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>Land:</td>
    <td><input name="state" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>PLZ:</td>
    <td><input name="zip" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>Stadt:</td>
    <td><input name="city" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>E-Mail</td>
    <td><input name="email" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>Telefon:</td>
    <td><input name="phone" type="text" maxlength="50" /></td>
  </tr>
  <tr>
    <td>Fax:</td>
    <td><input name="fax" type="text" maxlength="50" /></td>
  </tr>
  <tr align="center" valign="middle">
    <td colspan="2"><input type="submit" name="Submit" value="Senden" /></td>
    
  
<?php

							
							$verbindung=mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS);
							if ($verbindung) { 
	                             echo "<br>\n";
							 } else {
								echo"Keine Verbindung.<br>\n";
								echo mysql_errno() . ":" . mysql_error() . "<br>\n";
							 }
							if(mysql_select_db(MYSQL_DATABASE, $verbindung)){ 
								echo" <br>\n";
							 } else {
								echo"Datenbank : $dbname konnte nicht ausgewählt werden" . "Error.<br>\n";
								echo mysql_errno() . ":" . mysql_error() . "<br>\n"; 
							 }		
							if (($company == "") || ($name == "") || ($street == "") || ($state == "") || ($zip == "") || ($city == "") || ($email == "") || ($phone == "") || ($fax == "")) { 
								die(" <b>Bitte alle Felder ausfüllen!</b>");
								} else {
								$sql= "INSERT INTO customer 
										(company, name, street, state, zip, city, email, phone, fax )
			
		  							  VALUE (
		  								'".$_POST['$company']."',
										'".$_POST['$name']."',
										'".$_POST['$street']."',
										'".$_POST['$state']."',
										'".$_POST['$zip']."',
										'".$_POST['$city']."',
										'".$_POST['$email']."',
										'".$_POST['$phone']."',
										'".$_POST['$fax']."' 
										)";
									
								echo "Kunde wurde erfolgreich in die DB geschrieben!\n";
								mysql_query($sql);
								mysql_close();
								echo "Kunde wurde erfolgreich angelegt!"; 
								}

?>
</tr>
</table>
</form>
</body>
</html>

Lasse ich mir die Seite anzeigen, erscheint dieser Fehler:

Notice: Undefined variable: company in D:\apps\TSW\Apache2\htdocs\spedition\content\kunden_add.php on line 66
Bitte alle Felder ausfüllen!

Zeile 66;
PHP:
if (($company == "") || ($name == "") || ($street == "") || ($state == "") || ($zip == "") || ($city == "") || ($email == "") || ($phone == "") || ($fax == "")) {

Wird sie definiert, erscheint folgendes:

Notice: Undefined index: $company in D:\apps\TSW\Apache2\htdocs\spedition\content\kunden_add.php on line 51

ich habe doch aber den namen im Textfeld vergeben! Any Ideas?

best regards
Dave
 
Habe es hinbekommen.

LSG:

PHP:
if(isset($_POST['submit']) AND "Senden" == $_POST['submit']) {
							$verbindung=mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS);
							if ($verbindung) { 
	                             echo "<br>\n";
							 } else {
								echo"Keine Verbindung.<br>\n";
								echo mysql_errno() . ":" . mysql_error() . "<br>\n";
							 }
								if(mysql_select_db(MYSQL_DATABASE, $verbindung)){ 
								echo" <br>\n";
							 } else {
								echo"Datenbank : $dbname konnte nicht ausgewählt werden" . "Error.<br>\n";
								echo mysql_errno() . ":" . mysql_error() . "<br>\n"; 
							 }		
							if (($company == "") || ($name == "") || ($street == "") || ($state == "") || ($zip == "") || ($city == "") || ($email == "") || ($phone == "") || ($fax == "")) { 
								die(" <b>Bitte alle Felder ausfüllen!</b>");
								} else {
								$sql= "INSERT INTO customer 
										(company, name, street, state, zip, city, email, phone, fax )
			
		  							  VALUE (
		  								'".$_POST['$company']."',
										'".$_POST['$name']."',
										'".$_POST['$street']."',
										'".$_POST['$state']."',
										'".$_POST['$zip']."',
										'".$_POST['$city']."',
										'".$_POST['$email']."',
										'".$_POST['$phone']."',
										'".$_POST['$fax']."' 
										)";
									
								echo "Kunde wurde erfolgreich in die DB geschrieben!\n";
								mysql_query($sql);
								mysql_close();
								echo "Kunde wurde erfolgreich angelegt!"; 
								}
							}

?>

Leider traegt er die Daten nich in die DB ein! Mir kommt es so vor das er den "else zweig" fuer das insert nich durchläuft.

best regards
Dave
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück