Wie wäre es denn damit die $query _vorher_ zu loggen?
Vorher? Bevor der String überhaupt zugewiesen wurde? Was soll denn das?
Nein! Bevor der String an die Datenbank geschickt wird.
Ich habe das mal für Dich gemacht:
<?php $Firmenname="foo' GmbH";
$Land="DE";
$Status=1;
$Link="viel text";
$entry=100;
$_GET['section']=2;
$DB=mysql_connect('####', '###', '###'); # Deine Werte...
if (!$Firmenname)
{
echo "Sie haben keine Daten eingegeben!<br>";
}
else
{
dbcall();
switch ($_GET['section'])
{
case 1:
$query = "INSERT INTO hersteller (Firmenname, Land, Status, Link) VALUES ('".mysql_real_escape_string($Firmenname)."','".mysql_real_escape_string($Land)."','".mysql_real_escape_string($Status)."','".mysql_real_escape_string($Link)."')";
break;
case 2:
$query = "UPDATE hersteller SET Firmenname='".mysql_real_escape_string($Firmenname)."', Land='".mysql_real_escape_string($Land)."', Status='".mysql_real_escape_string($Status)."', Link='".mysql_real_escape_string($Link)."' WHERE ID=".$entry;
break;
}
Meine Zeile
error_log("\n".$query, 3, "/tmp/query.log");
##############################
#$result = mysql_query($query);
dberror();
echo "Ihre Eingabe war korrekt und wurde in die Datenbank eingetragen!";
$db = mysql_close();
dberror();
}
function dbcall() {
return true;
}
function dberror() {
return true;
}
?>
Resultat in /tmp/query.log:
UPDATE hersteller SET Firmenname='foo' GmbH', Land='DE', Status='1', Link='viel text' WHERE ID=100
(wird jeweils angehängt)
Jörg Reinholz