2 Tabellen einer MySQL-Datenbank auf einmal updaten

Danke Leute!

Ich habe jetzt den Fehler gefunden! ;-)

Die Echo-Ausgabe von "$sql" zeigte mir, das ein "e" fehlte... :-)

War:
PHP:
magazine.AR_Sprockhovel = '".$ar_sprockhovel."',

Soll:
PHP:
magazine.AR_Sprockhoevel = '".$ar_sprockhoevel."',

Danke für die Hilfe!

Zum Tip von Maniac:
Muss einfach nur meine POST Variablen mit deinem Besipiel ersetzen? Was erreiche ich damit?
 
Wenn man Userinagaben in die Datenbank schreibt und nicht maskiert, wäre es möglich Schabernack zu treiben mit der DB. Du kannst mein Beispiel so verwenden für diese eine von dir beschriebene Situation. Dies funktioniert allerdings nur wenn es ein 1-Dimensionales Array ist.
 
Nochwas...

Jetzt habt ihr mir so gut geholfen! ;-)

Kann ich auch in zwei Datenbanken gleichzeitig etwas eintragen?

So funktioniert es leider nicht:

PHP:
if ($_POST['submit'])
{	
$sql = 'INSERT INTO adressen, magazine (
		Firma,
		Vorname,
		Nachname,
		Strasse,
		Hausnummer,
		Ort,
		PLZ,
		Branche,
		Mobil,
		Festnetz,
		Email,
		Homepage,
		Notiz,
		Empfehlung,
		Ergebnis,
		Termine,
		AR_Sprockhoevel,
		AR_Hattingen,
		AR_Witten,
		AR_Bochumsued
		)
	VALUES (
		"'.$_POST['adressen.Firma'].'",
		"'.$_POST['adressen.Vorname'].'",
		"'.$_POST['adressen.Nachname'].'",
		"'.$_POST['adressen.Strasse'].'",
		"'.$_POST['adressen.Hausnummer'].'",
		"'.$_POST['adressen.Ort'].'",
		"'.$_POST['adressen.PLZ'].'",
		"'.$_POST['adressen.Branche'].'",
		"'.$_POST['adressen.Mobil'].'",
		"'.$_POST['adressen.Festnetz'].'",
		"'.$_POST['adressen.Email'].'",
		"'.$_POST['adressen.Homepage'].'",
		"'.$_POST['adressen.Notiz'].'",
		"'.$_POST['adressen.Empfehlung'].'",
		"'.$_POST['adressen.Ergebnis'].'",
		"'.$_POST['adressen.Termine'].'",
		"'.$_POST['magazine.AR_Sprockhoevel'].'",
		"'.$_POST['magazine.AR_Hattingen'].'",
		"'.$_POST['magazine.AR_Witten'].'",
		"'.$_POST['magazine.AR_Bochumsued'].'")';
		
mysql_query($sql); 
  echo "<script type='text/javascript'>location.href='index.php?go=ok';</script>";
}
 
Wie sieht das aus? Hab jetzt schon wieder zuviel ausprobiert... :-/

Kann man ein Art "elseif-Abfrage" machen?

PHP:
if ($_POST['submit'])
{	
$sql1 = 'INSERT INTO adressen (
		Firma,
		Vorname,
		Nachname,
		Strasse,
		Hausnummer,
		Ort,
		PLZ,
		Branche,
		Mobil,
		Festnetz,
		Email,
		Homepage,
		Notiz,
		Empfehlung,
		Ergebnis,
		Termine )
	VALUES (
		"'.$_POST['Firma'].'",
		"'.$_POST['Vorname'].'",
		"'.$_POST['Nachname'].'",
		"'.$_POST['Strasse'].'",
		"'.$_POST['Hausnummer'].'",
		"'.$_POST['Ort'].'",
		"'.$_POST['PLZ'].'",
		"'.$_POST['Branche'].'",
		"'.$_POST['Mobil'].'",
		"'.$_POST['Festnetz'].'",
		"'.$_POST['Email'].'",
		"'.$_POST['Homepage'].'",
		"'.$_POST['Notiz'].'",
		"'.$_POST['Empfehlung'].'",
		"'.$_POST['Ergebnis'].'",
		"'.$_POST['Termine'].'")';
}
elseif
{
$sql2 = 'INSERT INTO magazine (
		AR_Sprockhoevel,
		AR_Hattingen,
		AR_Witten,
		AR_Bochumsued )	
	VALUES (
		"'.$_POST['AR_Sprockhoevel'].'",
		"'.$_POST['AR_Hattingen'].'",
		"'.$_POST['AR_Witten'].'",
		"'.$_POST['AR_Bochumsued'].'")';
}
 
Das Würde bedeuten wenn dein Formular abgesendet wurde, trägt er es in die eine Tabelle ein, wenn das Formular nicht abgesendet wurde, dann in die andere. Ist das dein Ziel?
MAch doch einfach 2 Inserts:

PHP:
$sql1 = "INSERT INTO tabelle1 (fields) VALUES (values)";
$sql2 = "INSERT INTO tabelle2 (fields) VALUES (values)";

mysql_query($sql1) or die(mysql_error());
mysql_query($sql2) or die(mysql_error());
 
Und wie baue ich das in meine "IF-Schleife" ein?

So...

PHP:
if ($_POST['submit'])
{	
$sql1 = 'INSERT INTO adressen (
		Firma,
		Vorname,
		Nachname,
		Strasse,
		Hausnummer,
		Ort,
		PLZ,
		Branche,
		Mobil,
		Festnetz,
		Email,
		Homepage,
		Notiz,
		Empfehlung,
		Ergebnis,
		Termine )
	VALUES (
		"'.$_POST['Firma'].'",
		"'.$_POST['Vorname'].'",
		"'.$_POST['Nachname'].'",
		"'.$_POST['Strasse'].'",
		"'.$_POST['Hausnummer'].'",
		"'.$_POST['Ort'].'",
		"'.$_POST['PLZ'].'",
		"'.$_POST['Branche'].'",
		"'.$_POST['Mobil'].'",
		"'.$_POST['Festnetz'].'",
		"'.$_POST['Email'].'",
		"'.$_POST['Homepage'].'",
		"'.$_POST['Notiz'].'",
		"'.$_POST['Empfehlung'].'",
		"'.$_POST['Ergebnis'].'",
		"'.$_POST['Termine'].'")';

$sql2 = 'INSERT INTO magazine (
		AR_Sprockhoevel,
		AR_Hattingen,
		AR_Witten,
		AR_Bochumsued )	
	VALUES (
		"'.$_POST['AR_Sprockhoevel'].'",
		"'.$_POST['AR_Hattingen'].'",
		"'.$_POST['AR_Witten'].'",
		"'.$_POST['AR_Bochumsued'].'")';
		
mysql_query($sql); 
  echo "<script type='text/javascript'>location.href='index.php?go=ok';</script>";
}

...gehts leider nicht. :-(
 
Mach doch mal aus der Zeile

PHP:
mysql_query($sql);

ein

PHP:
mysql_query($sql) or die( mysql_error() ); // << Fehler-Anzeige aktivieren

Schreib außerdem vor die folgende Zeile

PHP:
if ($_POST['submit'])

noch das hier:

PHP:
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);

Edit: Da fehlt außerdem noch eine Zeile:

PHP:
mysql_query($sql) or die( mysql_error() ); // << Fehler-Anzeige aktivieren
// und das zweite Statement ausführen
mysql_query($sql2) or die( mysql_error() ); // << Fehler-Anzeige aktivieren
 
Zurück