Archiv verlassen und diese Seite im Standarddesign anzeigen : Bild Zufallesskript mit einzellner Verlinkung
Hallo alle.
Also ich wolte fragen wie man diesen Code
<?php
header('Content-Type: image/png');
$bilder = array('http://people.freenet.de/sekarsforum/werbung/in_flames_come_clarity.PNG', '');
srand((double)microtime()*1000000);
$bildnr = rand(0, count($bilder) - 1);
header("Location: ".$bilder[$bildnr]);
?>
so machen das jedes bild einzelln verlink wird...
z.B.: wen der banner von in Flames kommt das mana uch ihn anklicken kann und auf die seite kommt...
und das gleiche beim anderen (also wen diese snoch kommt)
help plz...
mfg Sekar
drunken monkey
17.02.2006, 17:31
Du könntest die Stelle, an der du das Bild einbindest, per PHP ausgeben lassen, und zwar je nach dem Wert von $bildnr. Also ca. so:
...
<?php
switch ($bildnr) {
case 0: echo "<a href = 'entsprechendeURL.tld'><img src = 'entsprechendesBild'></a>"; break;
case 1: ....
case 2: ....
....
?>
}
So würdest du auch kein Array brauchen, wenn du's trotzdem nehmen willst, kannst du das <img> und </a> Tag außerhalb vom switch-case schreiben.
...wenn ich das Ganze richtig verstanden habe.
mfg Selar
http://www.multimediaxis.de/images/smilies/old/1/gruebel.gif
Thank you Drunken Monkey http://www.multimediaxis.de/images/smilies/old/1/knuffel.gif *peace*
mfg Sekar ;)
Hm, Also irgendiwe wils doch nicht so es gibt immer nur das was in case 0 ist zuerst aus.
Die anderen bleiben leer auch bei öfteren F5 Drücken.
hat es villeicht was mit dem
switch ($bildnr) zutuhn ?
mfg Sekar
drunken monkey
06.03.2006, 10:28
Nein, das sollte eigentlich passen. Hast du auch irgendwo davor reingeschrieben, dass "$bildnr" eine zufällige Variable ist?
Also der Teil
$bilder = array('http://people.freenet.de/sekarsforum/werbung/in_flames_come_clarity.PNG', '');
srand((double)microtime()*1000000);
$bildnr = rand(0, count($bilder) - 1);
muss auch rein. Wenn der eh drin ist, kann ich's auch nicht wirklich erklären.
Also mus ich das eine Skript da auchnoch hinzufügen ?
Naja ich bin ein PHP noob aber ich schätze das dass arrey schon als variable gildet ?
drunken monkey
07.03.2006, 08:02
Wie meinst du jetzt? Das Array ist natürlich schon eine Variable, allerdings keine zufällige. Du musst noch eine zufällige Variable $bildnr haben, die du dann als Switch benutzt.
Pack einfach an die Stelle, wo das Bild (also der img-Tag des Bilds) sein sollte, folgenden Text:
<?php
srand((double)microtime()*1000000);
$bildnr = rand(0, [anzahl der bilder, musst du wissen]);
switch ($bildnr) {
case 0: echo "<a href = 'entsprechendeURL.tld'><img src = 'entsprechendesBild'></a>"; break;
case 1: ....
case 2: ....
....
}
?>
Also zuerst erzeugst du eine Zufallszahl $bildnr, dann prüfst du ihren Wert und fügst das entsprechende Bild ein.
Ich hoffe mal, jetzt ist's verständlich. :)
Ist die zufallszahl die anzahl der Bilder :p ?
(Jezt volkommen iritiert)
drunken monkey
07.03.2006, 09:07
Nein, die Zufallszahl liegt durch den Code "$bildnr = rand (0, x);" zwischen 0 und dem zweiten Wert. x solltest du dabei als die Anzahl der Bilder (weniger 1, das habe ich vorhin vergessen) wählen, sodass du für jedes mögliche Bild einen Wert hast.
Du könntest eigentlich genausogut Werte zwischen 1 und der Anzahl der Bilder, oder 853 und 853+Anzahl der Bilder nehmen, aber so ist es imo am verständlichsten.
Ich editiere gleich noch eine ausführliche Erklärung rein, aber vielleicht hilft ja schon das...du Noob! :p
Edit:
Nehmen wir mal an, du hast vier verschiedene Bilder. Dann wäre genau das der Code fürs Einbinden:
<!-- Hier soll im HTML-Code der IMG-Tag stehen -->
<?php
srand((double)microtime()*1000000); // Das sollte vor jeder Zufallszahlengenerierung so ähnlich stehen,
//damit auch wirklich eine zufällige Zahl kommt.
$bildnr = rand(0, 3); // Das weist der Variablen $bildnr einen zufälligen Wert von 0 bis 3 zu
switch ($bildnr) { //Der Wert von $bildnr wird überprüft, je nach Wert wird ein anderes Bild eingebunden.
case 0: echo "<a href = 'bild1.jpg'><img src = 'bild1_thumb.jpg'></a>"; break;
case 1: echo "<a href = 'bild1.jpg'><img src = 'bild1_thumb.jpg'></a>"; break;
case 2: echo "<a href = 'bild1.jpg'><img src = 'bild1_thumb.jpg'></a>"; break;
case 3: echo "<a href = 'bild1.jpg'><img src = 'bild1_thumb.jpg'></a>"; break;
default: echo "OK, irgendein schlimmer Fehler, den selbst der geniale drunken monkey nicht vorhergesehen hat ist aufgetreten...:("; break;
}
?>
Aso jezt ab ichs kapiert Oo
Danke =D
Juhu es Funktionirt .... nent mich gott... ^^
Drunken is unwichtig :p
Machs dir einfacher:
srand((double)microtime()*1000000);
$bilder = Array("bild1.png", "bild2.png", ...);
$bilder_thumb = Array("bild_thumb1.png", "bild_thumb2.png", ...);
$rand = rand(0, (count($bilder)-1));
echo '<a href="'.$bilder[$rand].'"><img src="'.$bilde_thumbr[$rand].'"></a>';
In den ersten Array kommen alle Bilder rein und in den zweiten die kleineren Versionen...
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.