Matthias: Schreibfehler

Hi,

wahrscheinlich ganz leichte Frage:

$res =  mysql_query("select * from threads where fid=".$_GET["fid"]);

da würde ich jetzt noch gerne ein "order by id" dranhängen.

mysql_query("select * from threads where fid=".$_GET["fid"]."order by id");

funkt aber nicht,

Danke

Matthias

  1. Holladiewaldfee,

    mysql_query("select * from threads where fid=".$_GET["fid"]."order by id");

    Wenn Du weißt woran es liegt, warum probierst Du dann nicht etwas Debugging?
    Laß Dir die generierte Query mittels echo ausgeben und Du wirst das fehlende Leerzeichen ganz schnell selbst entdecken.

    Ciao,

    Harry

    --
      Herbst ist Wanderzeit!
      http://harry.ilo.de/projekte/berge/
    1. Laß Dir die generierte Query mittels echo ausgeben und Du wirst das fehlende Leerzeichen ganz schnell selbst entdecken.

      "Leerzeichen" war das Keyword, klappt jetzt

      Merci

      Matthias

      1. Hallo,

        das mit der direkten Übernahme eines Get-Parameters ind die Abfrage würde ich mir aber genau überlegen. Man sollte zumindest eine Typ-Begrenzung drum herum legen.

        $blah = Array der zulässigen Ordnungen

        $order = "";
        if ($blah[$blahnr]["blahtext"])
          $order = "order by $blah[$blahnr]["blahtext"]);

        $fid = intval($_GET["fid"]);
        if ($fid ...)
          $res = mysql_query("select * from threads where fid=$fid $order")
        else
          fehlermeldung();

        Wenn man es dann noch, so wie oben angebdeutet, in mehrere Schritte aufteilt, bleibt das Ganze übersichtlich und man erkennt langsam, wie man per Formular auch komplexere Abfragen durch den User zusammenstellen lassen kann, ohne Gefahr zu laufen, dass Pfiffiküsse mit einem eigenen Formular Löcher ins System bohren.

        Grüße

        Tom

  2. Servus,

    wahrscheinlich ganz leichte Frage:

    $res =  mysql_query("select * from threads where fid=".$_GET["fid"]);

    Versuch es mal so.

    mysql_query("select * from threads where fid='.$_GET[fid].' order by id");

    Hab kein PHP daher kann ich es nicht probieren.
    Es könnte auch so klappen ....

    mysql_query("select * from threads where fid='.$_GET['fid'].' order by id");

    Und falls dem nicht so sei, dann muss ich zugestehen, sind meine PHP Kenntnisse nicht so fit, als dass ich weiss, ob Du

    $_GET['fid'].

    behandeln musst.

    soweit so gut. Vieleicht findest du ja noch jemanden der es besser weiss, oder weisst es selber besser?

    Gruss Matze

    1. Holladiewaldfee,

      mysql_query("select * from threads where fid='.$_GET[fid].' order by id");

      Hab kein PHP daher kann ich es nicht probieren.
      Es könnte auch so klappen ....

      Das geht schief.
      Wenn, dann:

      mysql_query("select * from threads where fid=".$_GET["fid"]." order by id");
      mysql_query("select * from threads where fid={$_GET['fid']} order by id");

      soweit so gut. Vieleicht findest du ja noch jemanden der es besser weiss, oder weisst es selber besser?

      Ja, sorry, aber was Du erzählt hast, war ziemlicher Quark ;)

      Ciao,

      Harry

      --
        Herbst ist Wanderzeit!
        http://harry.ilo.de/projekte/berge/
      1. Servus,

        nur interesse halber warum

        mysql_query("select * from threads where fid='.$_GET['fid'].' order by id");

        mag er das nicht??

        Bei Perl hätte das menes wisens geklappt.
        Die leerstelle habe ich ja auch gefunden.

        Gruss Matze

        1. hi,

          nur interesse halber warum
          mysql_query("select * from threads where fid='.$_GET['fid'].' order by id");
          mag er das nicht??

          du fängst den string mit " an, also musst du ihn auch mit " unterbrechen, bevor du mit . weitere elemente dranhängen kannst.

          "select * from threads where fid='".$_GET['fid']."' order by id"
          würde funktionieren.

          gruss,
          wahsaga

          1. Servus,

            Auaauaua

            man sollte sich als Perler doch nie mit PHP auseinander setzen und meinen so eine einfache Frage beantworten zu können.
            Bei Perl brauchst Du einen String nicht unterbrechen um Variablen Werte zu ergänzen.....

            Au backe und weil da kein Java typische + bzw. || zum addieren der String war.

            Auauauaua

            Jau so kann man auf die Schnauze fallen.
            Danke für die Ausarbeitung

            Gruss Matze

        2. Holladiewaldfee,

          mysql_query("select * from threads where fid='.$_GET['fid'].' order by id");

          mag er das nicht??

          Wegen der unterschiedlichen Anführungszeichen: "'.''.'"
          Möglich wären aa.bb.cc (mit a, b oder c jeweils " oder ').
          Oder die erwähnte Lösung mit den geschweiften Klammern. Dann fielen allerdings die Punkte und zwei Anführungszeichen weg.

          Ciao,

          Harry

          --
            Herbst ist Wanderzeit!
            http://harry.ilo.de/projekte/berge/