problem mit while schleife (?)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • problem mit while schleife (?)

    also...ich hab eine tabelle in einer mysql db...die tabelle heisst "games" und in der tabelle ist ein feld mit "id" und ein feld mit "titel"

    id ist auf primärschlüssel eingestellt also alles ok soweit..

    jetzt will ich mit einem mini-php script einfach eine abfrage machen...

    und zwar: wenn über die url die variable "id" übergeben wird...(zb bei games.php?id=5)
    dann möchte ich, dass meine tabelle "games" abgefragt wird nach dem "titel" der in der zeile mit der id #5 steht. und dann als echo dieser titel ausgegeben wird.

    sollte aber per url keine id übergeben worden sein so soll einfach was anderes als echo ausgegeben werden...

    hier der code:

    PHP-Code:
    <?

    include("inc/sql_config.php");
    $abfrage = "SELECT titel FROM games WHERE id='$id'";
    $ergebnis = mysql_query($abfrage);
    while(list($titel) = mysql_fetch_row($ergebnis));

    ?>

    <?
    include("inc/header1.php");
    ?>

    <?

    if($id) {echo("RetroRPG.com - Games - $titel");}

    else {echo("RetroRPG.com - Games");}

    ?>

    <?
    include("inc/header2.php");
    ?>

    <?

    if($id) {include("inc/games.php");}


    else {include("inc/list.php");}

    ?>

    <?
    include("inc/footer.php");
    ?>
    ich hoffe ihr könnt mir helfen...

    als anmerkung:

    header1 endet mit <title>
    und header 2 beginnt mit </title>

  • #2
    Wenn ichs richtig verstanden hab, solltest du mal das probieren:
    PHP-Code:
    <?

    include("inc/sql_config.php");
    if(!empty($id)) { $where = "WHERE id = '$id'"; }
    $abfrage = "SELECT titel FROM games $where";
    $ergebnis = mysql_query($abfrage);
    while(list($titel) = mysql_fetch_row($ergebnis));

    ?>

    Kommentar


    • #3
      Sorry, habs nicht richtig verstanden. Jetzt gibts dir alle Titel aus der DB an, wenn keine ID angegeben ist. Auch ne schöne Variante, aber wohl nicht das, was du willst.

      Aber wenn du was anderes anzeigen willst, dann mach es doch einfach so, wie du es mit dem Titel gemacht hast.

      Kommentar


      • #4
        oh sorry hab mein eigentliches problem nicht wirklich erklärt *g*

        das was ich möchte ist:

        wenn die variable $id per url übertragen wird (bsp: games.php?id=5) dann möchte ich eine mysql abfrage starten die mir dann den titel angibt der in der tabelle in der selben zeile steht wie die id...

        ich hab mir das so gedacht:

        if...die id mit der url übergeben wird...dann soll ne abfrage gestartet werden und dann der titel ausgegeben werden der in der zeile mit der übertragenen id steht...

        else...soll einfach was anderes ausgegeben werden..

        nunja..hier das problem:

        wenn die seite aufgerufen wird ohne id...funkt alles perfekt...dh der else teil geht...
        aber wenn mit id abgefragt wird dann funktioniert die ausgabe von $titel nicht es wird einfach nix ausgegeben...ich vermute dass der fehler daran liegt dass ich nicht einfach irgendwo ein echo mit der variable $titel machen kann wegen der while schleife...aber ich bin in solchen sachen leider der totale n00b

        Kommentar


        • #5
          PHP-Code:

          include("inc/sql_config.php");
          $link=mysql_connect(); // ist besser
          $mysql_select_db("db",$link);  //db durch deine datenbank ersetzen
          $abfrage "SELECT titel FROM games WHERE id='".$_POST["id"]."'"//wenn global varibales aus ist..
          $ergebnis mysql_query($abfrage,$link); //besser mitm link dahinter
          list($titel) = mysql_fetch_row($ergebnis); // ich geh mal davon aus, das id ne unique ist, also eh nur ein zeile= keine schleife. 
          Zuletzt geändert von Campus; 17.10.2002, 14:29.
          meine Projekte bestaunen: http://www.kleiza.de

          Kommentar


          • #6
            sorry aber ich glaub ich steh etwas sehr auf der leitung...

            ich hab jetzt folgendes gemacht:

            PHP-Code:
            <?

            if($id) {

            include("inc/sql_config.php");

            $abfrage_=_"SELECT_titel_FROM_games_WHERE_id='$id'";

            $ergebnis_=_mysql_query($abfrage);

            while(list($titel)_=_mysql_fetch_row($ergebnis)){echo"RetroRPG - Games - $titel";}


            }

            else {echo("RetroRPG.com - Games");}

            ?>
            was ist an dem code falsch?

            Kommentar


            • #7
              nochmals sorry...*g* anscheinend war der code eh richtig...nur das in meinem editor diese unterstriche wie abstände dargestellt worden sind und das hab ich nicht gesehn +g+

              hab die unterstriche jetzt durch abstände ersetzt und alles geht perfekt...

              aber trotzdem danke für eure hilfe :-)

              Kommentar

              Lädt...
              X