Dateneintrag wird nicht geschrieben

lll192837465lll

Erfahrenes Mitglied
Hallo Zusammen

Kurz:

Ich habe ein Formular, welches früher immer gegangen ist. Jetzt habe ich dies erweitert und auch die Tabelle geändert bzw. erweitert.

Wenn ich einen Eintrag mache, steht am schluss "Die Daten wurden erfolgreich eingetragen!" Aber in der DB sehe ich keinen Eintrag :(

PHP:
<? include('config.php'); 
 
 @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
    mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());
	
if ( empty($gl) )
		{
			$gl = 0;  
		}
else 	
		{
			$gl = $_POST['glyes'];
		}	

      $name = $_POST['name'];
      $ort = $_POST['ort'];
      $club = $_POST['club'];
      $datum = $_POST['datum'];
      $beschreib = $_POST['beschreib'];
      $link = $_POST['link'];
      $bildpost = $_FILES['Bild']['name']; 
      $bild_grosspost = $_FILES['Bild_gross']['name'];

if ( empty($name) || empty($ort) || empty($club) || empty($datum) || empty($link) )
	{
		echo "Bitte alle benötigten Felder ausfüllen!";
	}
else
	{
		$bildnamegr = basename($bildpost);
		$target_path = "../img/imgRef/01_news/";
		$bild_gross = "01_news/". $bildnamegr;
		$target_path = $target_path . basename( $_FILES['Bild']['name']); 
		move_uploaded_file($_FILES['Bild']['tmp_name'], $target_path);

		$bildname = basename($bild_grosspost);
		$target_path = "../img/imgBig/01_news/";
		$bild = "01_news/". $bildname;
		$target_path = $target_path . basename( $_FILES['Bild_gross']['name']); 
		move_uploaded_file($_FILES['Bild_gross']['tmp_name'], $target_path);

		$sql = mysql_query("INSERT INTO Events (name,ort,club,datum,beschreib,link,gl,bild,bildgr)
   					VALUES
   							('$name','$ort','$club','$datum','$beschreib','$link','$gl','$Bild','$Bild_gross'");
							echo "Die Daten wurden erfolgreich eingetragen!";
}
?>

Danke
 
Sehe ich jetzt das falsch, dass der Link den du mir geschickt hast, eine Abfrage andeutet und meiner aber ein Eintrag macht? Oder spielt das keine Rolle?

Ich denke das ist nämlich ein wichtiger Grundsatz:
Da jeder Query fehlschlagen kann, egal ob er nun syntaktisch richtig ist oder nicht, müssen wir überprüfen ob der Query fehlerhaft war. Dazu wird der Rückgabewert von query() überprüft. Ist dieser false so ist ein Fehler aufgetreten der über die error-Eigenschaft des MySQLi-Objekts abgerufen werden kann.
 
PHP:
$sql = mysql_query("INSERT INTO Events (name,ort,club,datum,beschreib,link,gl,bild,bildgr)
                       VALUES
                               ('$name','$ort','$club','$datum','$beschreib','$link','$gl','$Bild','$Bild_gross'");
if($sql)
{
              echo "Die Daten wurden erfolgreich eingetragen!"; 
}else{

    die(mysql_error());
}
 
Vielen Dank!

Ausgabe:
Die Daten wurden erfolgreich eingetragen!
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3

Line 3:
PHP:
 @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
 
Hiermit ist die Linie 3 der Mysql-Abfrage gemeint.
Und dort fehlt auch eine Klammer am ende:
PHP:
mysql_query("INSERT INTO Events (name,ort,club,datum,beschreib,link,gl,bild,bildgr)
                       VALUES
                               ('$name','$ort','$club','$datum','$beschreib','$link','$gl','$Bild','$Bild_gross' ) ");
 
Zurück