srand(microtime()*1000000);
$zufall = rand(1,20);
echo $zufall
so kann die zahlen 1 bis 20 zelfig erscheinen lassen aber wie kann ich da bilder oder links usw reinmachen ??
srand(microtime()*1000000);
$zufall = rand(1,20);
echo $zufall
so kann die zahlen 1 bis 20 zelfig erscheinen lassen aber wie kann ich da bilder oder links usw reinmachen ??
Gib den Bildern die Namen von 1-20 und lass sie dann ausgeben.
PHP-Code:
srand(microtime()*1000000);
$zufall = rand(1,20);
$bild = $zufall.".jpg";
echo "<img src\"$bild\">";
I never saw my PC smiling before - LINUX
Hallo!
Andere Möglichkeit:
Du nimmst ein numerisch indiziertes Array, und gibst dem Werte (nicht vergessen dass der index bei 0 beginnt).
PHP-Code:
<?php
$bilder[]="bild1.jpeg";
$bilder[]="bild2.jpeg";
$bilder[]="bild3.jpeg";
$bilder[]="bild4.jpeg";
srand(microtime()*1000000);
$zufall = rand(0,3);
echo $bilder[$zufall];
?>
danke
sagen wie mal cih hätte 10 bilder und will die alle 10 anzeigen lassen auf plätzen aber es soll bei seiten aufbau immer eine ander reihenfolle geben.PHP-Code:
<?php
$bilder[]="bild1.jpeg";
$bilder[]="bild2.jpeg";
$bilder[]="bild3.jpeg";
$bilder[]="bild4.jpeg";
$bilder[]="bild5.jpeg";
$bilder[]="bild6.jpeg";
$bilder[]="bild7.jpeg";
$bilder[]="bild8.jpeg";
$bilder[]="bild9.jpeg";
$bilder[]="bild0.jpeg";
srand(microtime()*1000000);
$zufall = rand(0,3);
echo $bilder[$zufall];
?>
Also das bild 1 mal auf platz 4;5;6;7..,, ist usw bild zwei und so weiter
Hallo localhost!
Erstmal:
Kleiner Fehler in deinem Skript - kommt davon wenn man einfach Copy und Paste macht!
Du hast geschrieben:
$zufall = rand(0,3);
=> er liefert dir eine Zufallszahl zwischen 0 und 3 => es können immer nur die ersten vier Bilder in deinem Array angezeigt werden.
Richtig ist:
$zufall = rand(0,count($bilder)-1);
In deinem Fall ist es notwendig, das ganze Array durchzumischen. Das machst du mit der Funktion shuffle().
Also:
PHP-Code:
<?php
$bilder[]="bild1.jpeg";
$bilder[]="bild2.jpeg";
$bilder[]="bild3.jpeg";
$bilder[]="bild4.jpeg";
$bilder[]="bild5.jpeg";
$bilder[]="bild6.jpeg";
$bilder[]="bild7.jpeg";
$bilder[]="bild8.jpeg";
$bilder[]="bild9.jpeg";
$bilder[]="bild0.jpeg";
shuffle($bilder);
foreach($bilder as $bild) {
echo "<img src=\"$bild\" /><br/>\n";
}
?>
jetzt kommt aber 10 mal der kleiche link hintereinander.PHP-Code:
<?
$bilder[]="http://192.168.1.101?m=1";
$bilder[]="http://192.168.1.101?m=2";
$bilder[]="http://192.168.1.101?m=3";
$bilder[]="http://192.168.1.101?m=4";
$bilder[]="http://192.168.1.101?m=5";
$bilder[]="http://192.168.1.101?m=6";
$bilder[]="http://192.168.1.101?m=7";
$bilder[]="http://192.168.1.101?m=8";
$bilder[]="http://192.168.1.101?m=9";
$bilder[]="http://192.168.1.101?m=0";
shuffle($bilder);
$zufall = rand(0,count($bilder)-1);
foreach($bilder as $bild) {
echo "<a href=\"$bilder[$zufall]\" target=_blank>$bilder[$zufall]</a> ";
}
?>
Ich meine
und in den felder sollen die bilder kommen aber immer unterschidlich also wo welches istPHP-Code:
<table><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr></table>
Hallo localhost!
Ich habe oben in der Beschreibung nur eine Fehlerkorrektur für dein Beispiel geliefert!
Was ich dann als PHP Code geschrieben habe hatte mit dem nichts mehr zu tun!
Das da 10 mal das gleiche Bild kommt ist doch logisch... wie wärs, wenn du erstmal versuchst das was du programmierst zu verstehen!
Bitte lies den PHP Code den ich oben gepostet habe nochmal genau durch... es funktioniert genauso wie ich es geschrieben habe!
Geändert von Gaert (08-03-2003 um 21:01 Uhr)
ja es geht ja aber das ist nicht genau so das was ich brauche.
Ich brauche eindcih nur die anordung ander aber.
Also 10 bilder und die kommen auch aber immer ander.
Bist du sicher, dass du genau das, was ich gepostet habe ausprobiert hast?
ja doch das scheind es zu sein.PHP-Code:
<?php
$bilder[]="bild1.jpeg";
$bilder[]="bild2.jpeg";
$bilder[]="bild3.jpeg";
$bilder[]="bild4.jpeg";
$bilder[]="bild5.jpeg";
$bilder[]="bild6.jpeg";
$bilder[]="bild7.jpeg";
$bilder[]="bild8.jpeg";
$bilder[]="bild9.jpeg";
$bilder[]="bild0.jpeg";
shuffle($bilder);
foreach($bilder as $bild) {
echo "<img src=\"$bild\" /><br/>\n";
}
?>
Aber da habe ich eine ausgabe und wie kann cih das von 10 stellen aus machen also :
PHP-Code:
<table><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr><tr>
<td>$Bild X</td>
<td>$Bild X</td>
</tr></table>
so das dan in jedem feld ein bild kommt.
das ist wohl das was du willst, !!BILD!! und ... (am Anfang) musst du noch entsprechend ersetzen.PHP-Code:
.....
echo "<table>";
$i=0;
$intr = 0;
foreach(.... {
$i++;
if ( $i > 2) {
$i=0;
echo "</tr>";
$intr =0;
}
if (! $intr) echo "<tr>";
echo "<td> !!BILD!! </td>;"
}
if ($intr) echo "</tr>";
echo "</table>\n";
Markus
soweit sogutPHP-Code:
<?php
$bilder[]="bild1.jpeg";
$bilder[]="bild2.jpeg";
$bilder[]="bild3.jpeg";
$bilder[]="bild4.jpeg";
$bilder[]="bild5.jpeg";
$bilder[]="bild6.jpeg";
$bilder[]="bild7.jpeg";
$bilder[]="bild8.jpeg";
$bilder[]="bild9.jpeg";
$bilder[]="bild0.jpeg";
shuffle($bilder);
echo "<table>";
$i=0;
$intr = 0;
foreach($bilder as $bild)
{
$i++;
if ( $i > 2)
{
$i=0;
echo "</tr>";
$intr =0;
}
if (! $intr) echo "<tr>";
echo "<td> $bild </td>";
echo "<td> $bild </td>";
echo "<td> $bild </td>";
echo "<td> $bild </td>";
echo "<td> $bild </td>";
echo "<td> $bild </td>";
echo "<td> $bild </td>";
}
if ($intr)
echo "</tr>";
echo "</table>";
?>
aber jetzt kommt ei jeden $bild alle 10 also 100 bilder kommen aber wie schafe ich das nur eins bei $bild kommt eins pro $bild
Geändert von localhost (09-03-2003 um 12:13 Uhr)
indem du
echo "<td> $bild </td>";
nur einmal hinschreibst und nicht gleich 7mal!
Ja ok dan kommten die 10 bilder aber in einer <td>$Bild X</td>
aber die sollen ja in 10 verschidenen <td>$Bild X</td>
kommen
also in jeweils ein <td></TD> soll ein bild rein und das 10 mal und bei jeden auf in einer ander reihenvollge
Lesezeichen