SQL Anweisung funktioniert nicht
Rocco
- php
0 horst0 horst
0 Andreas Korthaus
Hallo,
kann mir von euch vielleicht einer sagen was in dieser Funktion an $SQL nicht stimmt? Ich finde den Fehler einfach nicht.
Hier die Werte die ich übergebe: http://localhost/inser_update.php?add=1&tab=agentur&FORM_agenturID=18&FORM_agenturName=neu&submit=eintragen
<?php
$dbname = "db";
$loginname = "user";
$loginpass = "********";
$dbhost = "localhost";
$db = mysql_connect($dbhost, $loginname, $loginpass);
mysql_select_db($dbname,$db);
function phpInsert($tab){
global $HTTP_POST_VARS;
$keys = "";
$values = "";
foreach($HTTP_POST_VARS as $key=>$val)
{
if (substr($key, 0, 5) == "FORM_")
{
$keys .= substr($key, 5) . ", ";
$query = mysql_query("SELECT * FROM " . $tab) or die ("Invalid Query: phpInsert (1)");
$test = mysql_fetch_field ($query);
$isNumeric = $test->numeric;
if ($isNumeric == 1)
{
$values .= $val . ", ";
}
else
{
$values .= "'" . $val . "', ";
}
}
}
$keys = substr($keys, 0, -2);
$values = substr($values, 0, -2);
$SQL = "INSERT INTO " . $tab . " (";
$SQL .= $keys . ")";
$SQL .= "VALUES (";
$SQL .= $values . ")";
$query = mysql_query($SQL) or die ("Invalid Query: phpInsert (2)"); // hier fliege ich immer raus
global $insertedID;
$insertedID = mysql_insert_id();
}
if ($add==1){
phpInsert($tab);
}
?>
Danke für eure Hilfe und ein schönes Wochenende.
Rocco
Hallo,
kann mir von euch vielleicht einer sagen was in dieser Funktion an $SQL nicht stimmt? Ich finde den Fehler einfach nicht.
konnte das jetzt nicht ganz nachvollziehen, aber kann es sein,
dass nach dem letzten key bzw value noch ein , (Komma) kommt?
Vielleicht mag es dass ja nicht...
gruss
vom horst
konnte das jetzt nicht ganz nachvollziehen, aber kann es sein,
dass nach dem letzten key bzw value noch ein , (Komma) kommt?
Vielleicht mag es dass ja nicht...
vergiss es... hatte die substrings nicht gesehen.. ok
nochmal gucken
Hallo!
Wenn Du wissen willst was an der Qhery nicht stimmt lass Dir nach absenden der Query mysql_error() ausgeben! Da steht das meist genau drin.
Grüße
Andreas