kostenloser Webspace werbefrei: lima-city


Fehler im Code ?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    gaestefun

    Kostenloser Webspace von gaestefun

    gaestefun hat kostenlosen Webspace.

    Hallo!
    Ich wollte einmal eine Tabelle Sortieren Lassen,doch leider kommt immer nur ein Fehler:
    Fatal error: Datenbankanfrage schlug fehl: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER by 'id'' at line 8 in /home/webpages/lima-city/gaestefun/html/Check/Idarus.php on line 109

    Ich habe schon nachgeschaut wo er sein Kann,und e leigt warscheinlich hier:
    SELECT  *
        FROM    `Idarus`
        WHERE      `Link`     LIKE '%%'
                    OR  `Beschreibung`    LIKE '%%'
                    OR  `Seite`    LIKE '%%'
                    OR  `Titel`    LIKE '%%'
                     LIMIT 0, 15
        ORDER by 'id'

    Doch ich weiß jetzt nicht wo genau der Fehler ist !
    Kann mirjemand hierbei bitte Helfen!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Die LIMIT- kommt nach der ORDER-Anweisung.

    // edit: Typo

    Beitrag zuletzt geändert: 27.12.2009 17:34:34 von dro
  4. Autor dieses Themas

    gaestefun

    Kostenloser Webspace von gaestefun

    gaestefun hat kostenlosen Webspace.

    Ok!
    Das hab ich jetzt,doch jetzt ist meine Frage,was ich hier Falsch gemachthabe:
    Erst der Dazugehörige HTML Code
    <select name="Sortierung">
     <option value="Alphabet" >Nach Alphabet sortieren</option>
     <option value="Datum">Nach Eintragungsdatum sortieren</option>
     </select>

    Und hier der PHP Code:
    if($_POST["Sortierung"] == "Alphabet"){
         $Auflistung == "'Link'";
    }
    else if($_POST["Sortierung"] == "Datum" ){
        $Auflistung = "'id'";
    }
    else {
        $Auflistung = "'id'";
    }

    Ich finde hier einfach keinen Fehler.....
  5. gaestefun schrieb:
    Das hab ich jetzt,doch jetzt ist meine Frage,was ich hier Falsch gemachthabe:


    Du müsstest schon sagen, wo das Problem ist. Kommt eine Fehlermeldung?
  6. Autor dieses Themas

    gaestefun

    Kostenloser Webspace von gaestefun

    gaestefun hat kostenlosen Webspace.

    mmh ich hab jetzt ein Anderes Problem:
    Er soll nach Buchstaben Sortieren,doch das einzigste was er macht ist....nichts...er sortiert infach nicht danach:
    der HTML teil bleib gleich,und hier ist der PHP Teil I:
    if($_POST["Sortierung"] != "")
    {
    $Sorte = $_POST["Sortierung"];
    }else{
    $Sorte = "'$Sterne' desc";
    }

    Und hier Teil II:
    SELECT  *
        FROM    `Idarus`
        WHERE   ".$query."  ORDER by ".stripslashes($Sorte)."
        LIMIT $start,15
        ";

    PS:geht es überhaupt das PHP nach buchstaben Sortieren kann ?
  7. Aiaiai...

    Also:
    1. Dein Code hat starke Sicherheitsmängel. Es wäre einfach SQL-Injections durchzuführen
    -> Stichwort: SQL-Injection
    2. Beschäftige dich am Besten mal mit Magic Quotes. Ich nehme mal an du hast keine Ahnung warum du da ein stripslashes() benutzt, bzw. warum PHP \ voranstellt.
    3. Zum Code:
    Lasse dir am Besten einfach mal die SQL-Anweisung ausgeben, die du ausführst.. Dann siehst du was du überhaupt an die Datenbank sendest.
    Wenn du nicht darauf kommst schreibe hier wie deine SQL-Statements aussehen und ich seh nochmal drüber.

    PS:geht es überhaupt das PHP nach buchstaben Sortieren kann ?

    MySQL sortiert hier. Und wonach sollte sonst sortiert werden, wenn nicht nach Buchstaben oder Zahlen?

    Hoffe das hilft dir weiter.
  8. Autor dieses Themas

    gaestefun

    Kostenloser Webspace von gaestefun

    gaestefun hat kostenlosen Webspace.

    dro schrieb:
    Aiaiai...

    Also:
    1. Dein Code hat starke Sicherheitsmängel. Es wäre einfach SQL-Injections durchzuführen
    -> Stichwort: SQL-Injection
    2. Beschäftige dich am Besten mal mit Magic Quotes. Ich nehme mal an du hast keine Ahnung warum du da ein stripslashes() benutzt, bzw. warum PHP \ voranstellt.
    3. Zum Code:
    Lasse dir am Besten einfach mal die SQL-Anweisung ausgeben, die du ausführst.. Dann siehst du was du überhaupt an die Datenbank sendest.
    Wenn du nicht darauf kommst schreibe hier wie deine SQL-Statements aussehen und ich seh nochmal drüber.

    PS:geht es überhaupt das PHP nach buchstaben Sortieren kann ?

    MySQL sortiert hier. Und wonach sollte sonst sortiert werden, wenn nicht nach Buchstaben oder Zahlen?

    Hoffe das hilft dir weiter.

    Zu 1.
    Das ist mir noch nicht aufgefallen
    Zu 2.
    Ich hab immer neben mir ein 800 Seiten nachschlagregister stehen,zudem ist stripslashes() dazu da,das kein / davorsteht,und dass / muss aber in einer anderen Funktion genutzt werden,dashalb habe ich es nur in dieser einfach nur stripslashes() davorgestellt!
    Zu 3.
    Hab ich schon^^
    Zu "Allgemein"
    Das passt nicht zum Thema....!
  9. Zu 2.
    Ich hab immer neben mir ein 800 Seiten nachschlagregister stehen,zudem ist stripslashes() dazu da,das kein / davorsteht,und dass / muss aber in einer anderen Funktion genutzt werden,dashalb habe ich es nur in dieser einfach nur stripslashes() davorgestellt!


    Ok. Du weißt, dass PHP automatisch \ voranstellt. Dies diente dazu SQL Injections vorzubeugen. In dem du stripslashes() einsetzt sind SQL Injections wieder möglich. Usereingaben sollten immer geprüft werden bevor du sie verarbeitest.

    Zu 3.
    Hab ich schon^^


    Und jetzt funktioniert es?

    Zu "Allgemein"
    Das passt nicht zum Thema....!


    Was passt nicht zum Thema?

    // edit: Typo korrigiert

    Beitrag zuletzt geändert: 29.12.2009 16:02:17 von dro
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!