[MySQL 5.0.32] INSERT Anweisung per PHP funktioniert nicht!

preko

Erfahrenes Mitglied
Hi,

ich verzweifle gerade an einer INSERT Anweisung:
PHP:
    $db = @mysql_connect($host,$user,$password)
      or die (mysql_error()."<br />Verbindung mit Datenbankserver fehlgeschlagen!");
    @mysql_select_db($database,$db)
      or die (mysql_error()."<br />Verbindung mit Datenbank fehlgeschlagen!");
			$sql_query = "INSERT INTO 
            										`kurse`.`kurs_daten` (
                                                              `status`, 
                                                              `traeger_id`, 
                                                              `kurs_ort_id`, 
                                                              `kursname`, 
                                                              `int_bezeichnung`, 
                                                              `user_id`, 
                                                              `zielgruppe`, 
                                                              `zeitrahmen`
                                                             )
      							VALUES (
                              '$status', 
                              '$traeger_id', 
                              '$_POST['kurs_ort_id']', 
                              '$kursname', 
                              '$int_bezeichnung', 
                              '$_POST['user_id']', 
                              '$_POST['zielgruppe']', 
                              '$_POST['zeitrahmen']'
                            )			    ";

Hab´s auch schon so versucht:
PHP:
    $db = @mysql_connect($host,$user,$password)
      or die (mysql_error()."<br />Verbindung mit Datenbankserver fehlgeschlagen!");
    @mysql_select_db($database,$db)
      or die (mysql_error()."<br />Verbindung mit Datenbank fehlgeschlagen!");
			$sql_query = "INSERT INTO 
            										`kurs_daten` (
                                                              `status`, 
                                                              `traeger_id`, 
                                                              `kurs_ort_id`, 
                                                              `kursname`, 
                                                              `int_bezeichnung`, 
                                                              `user_id`, 
                                                              `zielgruppe`, 
                                                              `zeitrahmen`
                                                             )
      							VALUES (
                              '$status', 
                              '$traeger_id', 
                              '$_POST['kurs_ort_id']', 
                              '$kursname', 
                              '$int_bezeichnung', 
                              '$_POST['user_id']', 
                              '$_POST['zielgruppe']', 
                              '$_POST['zeitrahmen']'
                            )			    ";

hat es aber auch nicht gebracht. Die Anweisung ist zwar länger, die Ausschnitte verdeutlichen jedoch den Sinn der Anweisung. Die Daten kommen aus einem Formular.

Fehlermeldungen bekomme ich keine!

Hat jemand bitte eine zündende Idee?

Beste Grüße,
preko
 
Hi,

Wo schickst Du die Abfrage ab?
Wie sehen die Variableninhalte aus?
Wie sieht die zusammengesetzte Abfrage aus (mal per echo ausgeben lassen)?

LG
 
Hi kuddeldaddeldu,

Wo schickst Du die Abfrage ab?
Aus einem Formular (form.php) per POST, welches auf das Script auf die Seite (form_input.php) mit der INSERT Anweisung verweist.

Wie sehen die Variableninhalte aus?
Beispiel:
$traeger_id = '123456'
$_POST['kurs_ort_id'] = '1'
$kursname = 'Startkurs'
$int_bezeichnung = 'Kurs IV'
$_POST['user_id'] = '5'
$_POST['zielgruppe'] = 'Frauen'
$_POST['zeitrahmen'] = 'Teilzeit'


Wie sieht die zusammengesetzte Abfrage aus (mal per echo ausgeben lassen)?
Wie meinst Du das? Die INSERT Anweisung per echo ausgeben und wenn ja wie?

Beste Grüße,
preko
 
Hi,

ich meinte, wo Dein mysql_query($sql_query, $db) zu finden ist. Bis dahin hast Du nur einen String definiert.

SQL-Abfrage ausgeben:

PHP:
echo $sql_query;

LG
 
Die Ausgabe ist entsprechend wie in der Anweisung deklariert:
PHP:
INSERT INTO `kurse`.`kurs_daten` ( `status`, `traeger_id`, `kurs_ort_id`, `kursname`, `int_bezeichnung`, `user_id`, `zielgruppe`, `zeitrahmen` ) VALUES ( '1', '123456', '1', 'Startkurs', 'Kurs IV', '5', 'Frauen', 'Teilzeit')


Hatte kurz vor diesem Post den VALUE Teil in der INSERT Anweisung wie folgt geändert:
PHP:
...
VALUES (
'$status', '$traeger_id', '".$_POST['kurs_ort_id']."', '$kursname', '$int_bezeichnung', '".$_POST['user_id']."', '".$_POST['zielgruppe']."', '".$_POST['zeitrahmen']."')
			    "; 
...

Beste Grüße,
preko
 
Zuletzt bearbeitet:
Sorry, bin völlig blockiert. Nein, es funktioniert nicht. ich hatte die Änderung aufgrund einer PARSE Fehlermeldung gemacht, die danach behoben wurde.

In der Datenbank werden die Datensätze einfach nicht gespeichert.

Beste Grüße,
preko
 
Ich verstehe nicht genau was Du meinst. Ich habe nichts anderes außer der Datei class.inc.php welche per INCLUDE eingebunden wurde:

PHP:
$host="localhost";
$user="dbusr2008";
$password="Trallala";
$database ="kurse";

und vor der INSERT Anweisung wie bereits vorher erwähnt:

PHP:
    $db = @mysql_connect($host,$user,$password)
      or die (mysql_error()."<br />Verbindung mit Datenbankserver fehlgeschlagen!");
    @mysql_select_db($database,$db)
      or die (mysql_error()."<br />Verbindung mit Datenbank fehlgeschlagen!");
			$sql_query = "INSERT INTO 
...
 
Hi,

also hast Du bis jetzt nichts gemacht, als eine Verbindung zu Deiner Datenbank aufzubauen und Deine Abfrage in einen String zu schreiben. Wenn Du die Abfrage nicht mit mysql_query() ausführst, werden Deine Enkel noch daruaf warten, dass etwas in die DB geschrieben wird. ;)

LG
 
Zurück