Sunny: ORDER By

Hallo,

ich lasse gerade was auslesen und möchte das gerne nach dem neuestm Datum bzw. Uhrzeit auslesen, ich dachte ich muss das so machen:

$sql = "  
 SELECT  
 *,  
  DATE_FORMAT(created, '%d.%m.%Y') AS datum,  
  DATE_FORMAT(created, '%H:%i') AS uhrzeit  
FROM  `answers`  
where fid = ".$_GET["fid"]." AND tid=".$_GET["tid"]  
ORDER BY created DESC  
;  

Aber leider bekomme ich da dann nur diesen Fehler:

PHP Parse error:  syntax error, unexpected T_STRING in

dieser sagt doch, dass ich ein , zu wenig habe ein , zu weing aber ich finde den Fehler einfach nicht.

Weis jemand wo ich was falsch mache?

Gruß,
Sunny

  1. Hi,

    $sql = "[...]

    where fid = ".$_GET["fid"]." AND tid=".$_GET["tid"]
    ORDER BY created DESC
    ;

    
    >   
    > Aber leider bekomme ich da dann nur diesen Fehler:  
    >   
    > PHP Parse error:  syntax error, unexpected T\_STRING in  
    >   
    > dieser sagt doch, dass ich ein , zu wenig habe ein , zu weing aber ich finde den Fehler einfach nicht.  
      
    nein, er besagt, dass ein String an einer Stelle kommt, wo er nicht hingehört.  
      
    
    > Weis jemand wo ich was falsch mache?  
      
    Du hast 1.) pauschal alle Spalten eines Results selektiert, was ein grober Fehler ist, und 2.) nicht die Umbrüche aus Deinem Code entfernt, was Dir Überblick verschafft hätte.  
      
    Cheatah  
    
    -- 
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|  
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html  
    X-Will-Answer-Email: No  
    X-Please-Search-Archive-First: Absolutely Yes
    
  2. Hi,

    $sql = "

    SELECT
    *,
      DATE_FORMAT(created, '%d.%m.%Y') AS datum,
      DATE_FORMAT(created, '%H:%i') AS uhrzeit
    FROM  answers
    where fid = ".$_GET["fid"]." AND tid=".$_GET["tid"]
    ORDER BY created DESC
    ;

    
    >   
    > Aber leider bekomme ich da dann nur diesen Fehler:  
    >   
    > PHP Parse error:  syntax error, unexpected T\_STRING in  
      
    Natuerlich - ORDER BY versteht PHP nicht.  
    Es ist Teil des SQL-Statements, also gehoert es auch in den String, in dem du dieses definierst, mit hinein - und nicht ausserhalb.  
      
    
    > Weis jemand wo ich was falsch mache?  
      
    Dir scheint grundlegendes Wissen ueber den Umgang mit PHP zu fehlen.  
      
    MfG ChrisB  
      
    
    -- 
    „This is the author's opinion, not necessarily that of Starbucks.“
    
    1. Hallo,

      hab es nun so

      $sql = "  
       SELECT  
       *,  
        DATE_FORMAT(created, '%d.%m.%Y') AS datum,  
        DATE_FORMAT(created, '%H:%i') AS uhrzeit  
      FROM  `answers`  
      where fid = ".$_GET["fid"]."  
       AND tid=".$_GET["tid"] "ORDER BY created DESC"  
      ;  
      
      

      aber er sortiert nicht richtig, das neueste ist immer noch ganz unten.

      Gruß,
      Sunny

      1. Hi,

        AND tid=".$_GET["tid"] "ORDER BY created DESC"

        aber er sortiert nicht richtig, das neueste ist immer noch ganz unten.

        Die letzte Zeile ist auch weiterhin unsinnig.

        Informiere dich, wie man mit Strings umgeht, und wie man Variablen in sie einbettet:
        http://www.php.net/manual/en/language.types.string.php

        Und anschliessend informiere dich ueber SQL Injection, und was man dagegen unternimmt.

        MfG ChrisB

        --
        „This is the author's opinion, not necessarily that of Starbucks.“