[PHP/MySQL]Sessions



  • Hi!
    Wenn man in einer session in eine while Schleife ein $fid = $posts[3] (im SELECT als ID des posts) und ein session_register("fid") einbaue, dann nimmt $fid den letzten Wert an, da es solange verändert wird, bis der letzte Wert ausgelesen ist, oder? Ich würd jetzt gerne wissen, ob man das irgendwie hinbekommen kann?! thx im vorraus,
    MasterDeath



  • Erklär mal bitte genauer, ich versteh überhauptnicht was du damit meinst...

    Meinst du den .= operator?



  • Im Forum:

    <?php
     session_start();
     $db = mysql_connect();
     $forum="SELECT name, date, author, id FROM forum ORDER BY date LIMIT 3";
     $foruma=mysql_query($forum, $db);
     while ($posts = mysql_fetch_row($foruma))
     {
      $fid = $posts[3];
      session_register('fid');
      print ("<tr><td>Last Post:</td><td>Von:</td><td>Datum:</td></tr>");
      print ("<tr><td><a href=post.php>$posts[0]</a></td><td>$posts[2]        </td><td>$posts[1]</td></tr>");  
     }
    ?>
    

    Und wenn man jetzt auf den ersten ausgegebenen Wert klickt und zu post.php kommt, dann ist $fid der letzte Wert, der in der while Schleife abgerufen wurde, oder?! wenn man z.b. auf einen Link mit fid=2klicktundbeipost.phpdannSELECT...FROMforumWHEREid=fid = 2 klickt und bei post.php dann SELECT ... FROM forum WHERE id='fid' ausführt, wird der letzte Wert als $fid ausgegeben.



  • achso, ja das ist der letzte wert, da er ja auch zuletzt gesetzt wurde.

    mach es doch nich über sessions sonder so:

    <?
     $db = mysql_connect();
     $forum="SELECT name, date, author, id FROM forum ORDER BY date LIMIT 3";
     $foruma=mysql_query($forum, $db);
     while ($posts = mysql_fetch_row($foruma))
     {
      $fid = $posts[3];
      print ("<tr><td>Last Post:</td><td>Von:</td><td>Datum:</td></tr>");
      print ("<tr><td><a href=\"post.php?fid=$fid\">$posts[0]</a></td><td>$posts[2]        </td><td>$posts[1]</td></tr>");  
     }
    ?>
    

    Der müsste funktionieren. In der post.php hohlst du dein fid nicht aus der session sondern einfach mit $fid ausgeben.

    Besucht unser Downloadarchiv!(noch im Aufbau): http://www.filesforfree.de/preview



  • ok, thx für die Hilfe 😉


Anmelden zum Antworten