HILFE!!! Freundesliste in PHP!

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

  • HILFE!!! Freundesliste in PHP!

    Hi! ich bin gerade dabei ein Communityscript zu programmieren, bei dem man unter anderem anderen usern freundesanträge stellen kann.
    Ich habe mir das ungefähr so gedacht wie bei diesem Beispiel http://www.partyfans.com/community/d...hp?detid=983&, nur eben in einer liste =) Also wenn z.B. jemand einen Freundesantrag angenommen hat, wird der user mit einem punkt davor, also praktisch .$username, an die freundesliste des users in der datenbank angehängt. Sobald man das Profil eines Users öffnet, erscheint unter anderem auch die Freundesliste: dazu wird der Code aus der db genommen und die ganzen Namen mit der explode()-funktion ausgelesen. die freunde sollten dann in einer Liste aufgezählt werden, ich habe aber ein problem damit alle auszuzählen: ich habe mir zur Lösung des problems folgenden Code überlegt, der aber leider nicht funktioniert:

    PHP-Code:
    <?php
    $query 
    mysql_query("select * from tabelle where username='$username'");
    $daten mysql_fetch_array($query);
    $value explode("."$daten["freundeliste"]);
    for (
    $i 0$i 200$i $i 1) {
    $i $value[$i];
    }
    ?>
    bei dem code tritt bei mir immer folgender fehler auf:
    Fatal error: Maximum execution time of 30 seconds exceeded in /www/.../.../....php on line 7

    mir fällt leider keine andere lösung ein als diese hier und wenn ich dazu mit der schleife noch gleichzeitig die liste ausgeben will, scheint das ganze ins unendliche zu gehn, obwohl ich doch in der for-schleife die anzahl der durchläufe begrenzt habe oder gibt es da einen haken? falls es noch eine andere methode geben sollte ausser für jeden user eine extra spalte anzulegen und bei jedem durchlauf zu cheken, ob dieser eine andere spalte (sprich einen anderen user) als freund hat, die dazu noch bewirkt, dass die freunde in alphabetischer reihenfolge aufgelistet werden, der soll sich bitte bei mir melden
    Zuletzt geändert von Undercover; 19.08.2004, 22:41.

  • #2
    in der Schleife steht ja
    $i = $value[$i]; -> wozu?

    da wird ja immer wieder ein Wert(String) zugewiesen!?


    zum sortieren gibt array-Funktionen:
    http://de.php.net/manual/de/ref.array.php
    Zuletzt geändert von toshi; 19.08.2004, 23:33.
    require_once('gehirn_v_02beta.php');

    Kommentar


    • #3
      na du bist ja witzig...
      nach dem ersten durchlauf is $i der erste username,
      d.h. im 2. durchlauf ist $i = $value[username], was wahrscheinlich gar nicht existiert und somit NULL ist.
      am ende des durchlaufes addierst du 1 dazu (das macht die for(...;...;$i=$i+1)),
      und dank PHP ist NULL + 1 =1, und und das spiel geht wieder von vorne los...
      eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

      Kommentar


      • #4
        @ toshi: danke werd ich mir mal durchlesen

        @slarti: stimmt ich hab mir das nomma durchgeguckt^^" ursprünglich war es eigentlich so gedacht:
        $0 = $value[0];
        $1 = $value[1];
        $2 = $value[2];
        $3 = $value[3];

        aber wenn ich noch ne variable vor $i links dranhäng, geht das meines wissens nach auch net (tut mir leid ich bin leider net so gut wie die meisten anderen hier, bin ja grade mal 16^^") besteht da also keine möglichkeit, das ganze mit einer for-schleife abzuwickeln?

        Kommentar


        • #5
          Ich würde es an deiner Stelle über foreach machen.

          PHP-Code:
          <?php
          $query 
          mysql_query("select * from tabelle where username='$username'");
          $daten mysql_fetch_array($query);
          $value explode("."$daten["freundeliste"]);
          foreach (
          $value as $username) {
             echo 
          $username."<br>";
          }
          ?>
          Ein Vorteil wäre die Schleife würde nur so oft durchlaufen wie Einträge vorhanden sind.

          Kommentar


          • #6
            cool es klappt! vielen dank =)

            Kommentar

            Lädt...
            X