1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Query nicht korrekt - Wo ist der Fehler?

Discussion in 'Web-Know-how für die Homepage' started by Porfavor, May 9, 2009.

Thread Status:
Not open for further replies.
  1. Porfavor

    Porfavor Byte

    Hallo,

    ich habe folgenden Code und das Insert wird nicht richtig ausgeführt:
    PHP:
    $path $_POST['path'];
    $preenabled $_POST['enabled'];
    if(
    $preenabled == "0")
    {
    $enabled 0;
    }
    elseif(
    $preenabled == "1")
    {
    $enabled 1;
    }
    $parentid 9;
    $order 0;
    $desc "";
    $container "content/container.php";
    $idquery mysql_query("SELECT id FROM cms_sites ORDER BY id desc LIMIT 0,1") OR die(mysql_error());
    while(
    $preid2 mysql_fetch_array($idquery))
    {
    $preid $preid2['id'];
    }
    $id $preid 1;
    if(
    $path != "content/")
    {
    mysql_query("INSERT INTO cms_sites (id,path,parentid,order,desc,container,enabled) 
    VALUES (
    $id,'$path', $parentid$order,'$desc','$container',$enabled)") or die(mysql_error());
    }  
    Der Fehlermeldung nach ist etwas vor order falsch. Die Felder existieren aber alle, daran kann es nicht liegen, habe es auch schon ohne order versucht.

    Porfavor
     
  2. da_Ferdi

    da_Ferdi Halbes Megabyte

    Was ist denn die gesamte Fehlermeldung?
    Hilft es, wenn du die Feld- und Tabellennamen in der SQL Query in Anführungszeichen setzt?


    PHP:
    mysql_query("INSERT INTO cms_sites (id,path,parentid,order,desc,container,enabled)  
    VALUES (
    $id,'$path', $parentid$order,'$desc','$container',$enabled)");
    Dieser Code ist nicht sicher vor Sql Injection.
    Behandle, bevor du Benutzereingaben und andere potentiell nicht vertrauenswürdigen Daten gegen eine Datenbank fährst, die betreffenden Variablen immer mit mysql_escape_string() bzw. mysql_real_escape_string().
     
  3. Porfavor

    Porfavor Byte

    Hat sich schon erledigt danke!

    Reserved words: order, desc

    Da war das Problem.
     
Thread Status:
Not open for further replies.

Share This Page