Ergebnis 1 bis 6 von 6
  1. #1
    Sasch ist offline Mitglied
    registriert
    01-09-2011
    Beiträge
    46

    $rand wiederholen ohne vorigen Wert

    Guten Morgen liebes Forum

    Ich versuch mich gerade an einer fb app

    PHP-Code:
    <?
      $friend_count 
    count($friends);
      
    $random_friend_num rand(0,$friend_count-1);
      
    $random_friend[id] = $friends[$random_friend_num];
      echo 
    "<img src='http://graph.facebook.com/" $random_friend['id']  ."/picture'><br>";
     
    ?>
    HTML-Code:
    <tr>
    <td>
    <img src='http://graph.facebook.com/" . $random_friend['id']  ."/picture'><br>
    <td>
    </tr>
    Funktioniert auch alles soweit.

    Jedoch möchte ich nun das $friend_count die Freunde nochmals zählt und eine zufällige ID ausspuckt, ohne die schon erfasste ID.
    Sodass kein Bild doppelt ausgegeben wird.

    Ich möchte gerne 10 Bilder ausgeben lassen, muss ich dafür immer einen neuen Code schreiben oder kann man das zusammenfassen?

    PHP-Code:
    <?
      $friend_count1 
    count($friends);
      
    $random_friend_num1 rand(0,$friend_count-1);
      
    $random_friend[id] = $friends[$random_friend_num1];
      echo 
    "<img src='http://graph.facebook.com/" $random_friend['id']  ."/picture'><br>";
     
    ?>
    PHP-Code:
    <?
      $friend_count2 
    count($friends);
      
    $random_friend_num2 rand(0,$friend_count-1);
      
    $random_friend[id] = $friends[$random_friend_num2];
      echo 
    "<img src='http://graph.facebook.com/" $random_friend['id']  ."/picture'><br>";
     
    ?>
    PHP-Code:
    <?
      $friend_count3 
    count($friends);
      
    $random_friend_num3 rand(0,$friend_count-1);
      
    $random_friend[id] = $friends[$random_friend_num3];
      echo 
    "<img src='http://graph.facebook.com/" $random_friend['id']  ."/picture'><br>";
     
    ?>

    Danke für eure Hilfe

  2. #2
    dertypdernixkan ist offline Tripel-As
    registriert
    31-05-2013
    Beiträge
    194

    AW: $rand wiederholen ohne vorigen Wert

    PHP-Code:
    <? 
      $friend_count 
    count($friends); 
      
    $random_friend_num rand(0,$friend_count-1); 
      
    $random_friend[id] = $friends[$random_friend_num]; 
      echo 
    "<img src='http://graph.facebook.com/" $random_friend['id']  ."/picture'><br>"
     
    ?>
    Wenn ich das so richtig übersetze:

    Du zählst erst alle Freunde zusammen, startest mit rand() bei Null und ziehst dann vom friend_count eins ab? Warum?

    Möglicherweise könntest Du deinem Problem mit einer Schleife entgegentreten?

    Btw. seit wann gibt der Graph auch Userbilder her?

  3. #3
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: $rand wiederholen ohne vorigen Wert

    @dertypdernixkan: Arrayindices gehen in PHP von 0 bis "Anzahl - 1"...

    @Sasch: da gibt es mehrere Wegen. Einer ist, dass du dir aus dem $friends-Array einen zufälligen Index so generieren lässt, wie du es schon machst. Anschließend führst du ein array_splice() aus und entfernst damit den Eintrag aus dem Array. Jetzt kannst du das wiederholen, da in $friends ja der eine Freund nicht mehr drin ist.
    Ein anderer wäre, dass du das Array mischst und dann die ersten zehn Freunde nimmst.

  4. #4
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    AW: $rand wiederholen ohne vorigen Wert

    Dafür hat PHP schon eine fertige Funktion: array_rand, welche dir ein array mit idexwerten liefert.

    LG jspit

  5. #5
    dertypdernixkan ist offline Tripel-As
    registriert
    31-05-2013
    Beiträge
    194

    AW: $rand wiederholen ohne vorigen Wert

    Zitat Zitat von kkapsner Beitrag anzeigen
    @dertypdernixkan: Arrayindices gehen in PHP von 0 bis "Anzahl - 1"...
    Ah, das wusste ich nicht. Hab mir rand() noch nicht viel gemacht.

  6. #6
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: $rand wiederholen ohne vorigen Wert

    Das hat nichts mit rand(), sondern mit ganz normaler Arrayauslese... ich hoffe für dich, dass du das schon weißt.

Ähnliche Themen

  1. Popup Fenster mittig und ohne Rand
    Von tm. im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 02-12-2005, 10:03
  2. drucken ohne Rand
    Von c25xe im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 09-02-2005, 15:15
  3. iframe ohne Rand?
    Von BerndDasBrot im Forum Allgemeines
    Antworten: 2
    Letzter Beitrag: 27-06-2004, 08:27
  4. Drucken ohne Rand
    Von Toxictype im Forum Allgemeines
    Antworten: 1
    Letzter Beitrag: 20-06-2002, 12:58
  5. frameset cols ohne rand?
    Von maniac im Forum Allgemeines
    Antworten: 9
    Letzter Beitrag: 02-12-2000, 15:44

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •