Bilder per PHP bei Neuaufruf wechseln?

N

NikitaAviana

Mitglied
Thread Starter
Dabei seit
30.03.2011
Beiträge
37
Reaktionspunkte
0
Hey liebe php-kenner und Versteher =)
ich habe heut mal folgende Frage, und zwar würde ich gern genau wissen wie ich in php ausdrücken kann dass bei einem refresh oder klick auf ein anderen Menüpunkt auf einer HP sich Bilder per Zufall wechseln?
ich habe schon n bissl gelesen doch so richrtig verstande hab ichs nich^^ bin mit php nich so vertraut =)
und da ich mit einem cms arbeite muss ich wissen wie ich den Code einbaue damit es funktioniert =) sprich was muss in das Element , was in die CSS und was in den HTML Teil?
ich hoff mir mag jemand helfen =)
Ganz Liebe Grüße Niki
 
Stichwort rand().
 
hmm nich grad das was ich meinte aber dennoch danke !
 
doch will ich ich wollte aber jemand der mir erklärt wie ich den Code einbaue und der mir vill erklären mag was genau all das in dem Code bedeutet...
ich will ja dazulernen und nich stupide iwas einfügen was ich nicht mal verstehe..

Code:
<?php
$bilder=array("bild1.jpg","bild2.jpg",
"bild3.jpg");
mt_srand ((double)microtime()*1000000);
$zahl = mt_rand(0,(count($bilder) - 1));

echo '<img src="bilder/'.$bilder[$zahl].'">';
?>
 
$bilder=array("bild1.jpg","bild2.jpg","bild3.jpg");

Es wird eine Liste von Bildnamen generiert. Bild mit dem Index 0 heißt bild1.jpg, das mit dem Index 1heißt bild2.jpg,...

mt_srand ((double)microtime()*1000000);
$zahl = mt_rand(0,(count($bilder) - 1));

Es wird eine Zufallszahl zwischen 0 und der maximalen Länge des Arrays ermittelt ( der Bilderzähler beginnt ja bei 0 und nicht bei 1)

echo '<img src="bilder/'.$bilder[$zahl].'">';
Das zufällig gewählte Bild aus dem Array ( über den zufälligen Index $zahl) wird als HTML-Image in die Seite geschrieben.

Das ist alles :)
 
ok schon gut, danke für deine Mühe und Zeit
 
Es wird eine Liste von Bildnamen generiert. Bild mit dem Index 0 heißt bild1.jpg, das mit dem Index 1heißt bild2.jpg,...



Es wird eine Zufallszahl zwischen 0 und der maximalen Länge des Arrays ermittelt ( der Bilderzähler beginnt ja bei 0 und nicht bei 1)


Das zufällig gewählte Bild aus dem Array ( über den zufälligen Index $zahl) wird als HTML-Image in die Seite geschrieben.

Das ist alles :)

super vielen lieben dank, das hat mir sehr weiter geholfen!!!!
 
ich hätte da nochma ne Frage also mein Code sieht jetzt so aus :
Code:
<?
  $anzahl = intval('###TEXT-ZEILE-ID:1###',10);
  $img = array();
  $i = 0;
  ###DYNAMIC+
  $img[$i]['url'] = '###IMAGE_URL-ID:dy0###';
  $img[$i]['link'] = '###LINK-URL:dy1###';
  $i++;
  +DYNAMIC###
  
  for($j=0; $j < $anzahl; $j++){
  
  mt_srand ((double)microtime()*1000000);
  $zahl = mt_rand(0,(count($img) - 1));
  
  echo '<a href="'.$img[$zahl]['link'].'"><img src="'.$img[$zahl]['url'].'"></a>';
  
  }
  
  print_r($img);
?>

jedoch ergibt sich daraus folgendes Problem, dass es passieren kann das ein bild mehrmals angezeigt wird ect, mir wurde gesagt mit dem befehl ,,sort,, könne man das verhindern nur leider finde ich nicht die passenden Antworten im Netz dazu, weis denn jemand von euch wo und wie ich diesen Befehl einsetzen muss damit die Bilder nicht 2 oder 3 mal hintereinder kommen???

danke schonmal für eure Hilfe =)
 
jedoch ergibt sich daraus folgendes Problem, dass es passieren kann das ein bild mehrmals angezeigt wird ect, mir wurde gesagt mit dem befehl ,,sort,, könne man das verhindern nur leider finde ich nicht die passenden Antworten im Netz dazu, weis denn jemand von euch wo und wie ich diesen Befehl einsetzen muss damit die Bilder nicht 2 oder 3 mal hintereinder kommen???

Mit Schlagworten wie "nimm sort()" kommst Du so nicht weiter! Du brauchst ein wenig Zeit und etwas Einarbeitung in Programmierung.

Was tut man wenn Bilder nicht mehrfach erscheinen sollen? Man entfernt sie nach erfolgter Auswahl. Also das Bild anzeigen und den Namen aus dem Array entfernen. Das tut man solange bis das Array leer ist, dann füllt man wieder auf ( und ab da kommen dann Doubletten).

Wobei sich im Web ja noch andere Fragen stellen, denn doppelt bekäme sie ja auch immer nur ein Client zu sehen. Du müßtest also gucken wer da die Seite haben soll und welche Bilder er schon erhalten hat. Das wird beliebig kompliziert.

Als Näherungslösung würde ich ersteinmal für ausreichend mögliche Bilder sorgen, so werden Doubletten schon einmal sehr selten. Meist reicht das.
 
ja ich weis wie gesagt mit php kennsch mich noch nich so aus, eher in html und css^^
aber danke für deine Antwort, ich werd da ma was versuchen =)
 
Keine Panik :)
Jeder hat damit mal angefangen und der Anfang ist halt schwer!
 
Zurück
Oben Unten