Webstatt.org - Community seit 2006 - 2012 (2024?)

Zufalls eintrag auslesen

user-137
23.05.2006 17:19

Hallo,

ich habe für meinem Footer grade dieses script geproggt, das einen Banner von einem Partner anzeigt:

<?php
/* zeilen zählen */
$sql = "SELECT COUNT(id) FROM partner";
$result = mysql_query($sql);
$anzahl=mysql_fetch_row($result);
/* zeilen zählen ENDE */

/* zufalszahl erstellen von 1 bis "errehnete Zeilen" */
$zufall = rand(1,$anzahl['0']);
/* zufalszahl erstellen von 1 bis "errehnete Zeilen" ENDE */

/* Zufalls eintrag ausgeben */
$partner = mysql_query("SELECT * FROM partner WHERE id='$zufall'"zwinkern;
while ($row = mysql_fetch_object($partner)) {
?>
<a href="http://<? echo $row->link;?>" target="_blank" title="<? echo $row->name;?>"><img class="img" src="images/buttons/links/<? echo $row->bild;?>" alt="<? echo $row->name;?>"></a>&nbsp;<span class="Stil1">Klicks: <? echo $row->klick;?></span>
<?
}
/* Zufalls eintrag ausgeben ENDE */
?>


Das Problem ist nur das wenn eine ID gelöscht wird nichts angezeigt wird, wie kann ich überprüfen ob eine ID noch vorhanden ist, am besten mit if-else aber wie?

Mfg. BNS

Avatar user-182
23.05.2006 17:25

1. SELECT *? Brachst du wirklich alle Spalten?
2. Kennst du ORDER BY RAND()?
3. xHTML frech

Ich will nicht deinen kompletten Pagecode sehen...

Seid ihr auch schon wix'r? xD
user-137
23.05.2006 17:31

wieso?
Also, hier der ganze "Footer.php", ich arbeite noch an ihm also nicht wundern:

<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td height="21" background="images/footer/back.gif"><a href="javascript:history.back()"><img src="images/footer/go_back.gif" width="79" height="11" border="0"></a>&nbsp;&nbsp;<a href="#top"><img src="images/footer/go_top.gif" width="58" height="11" border="0"></a>&nbsp;&nbsp;<a href="?action=feedback"><img src="images/footer/go_feedback.gif" width="142" height="11" border="0"></a>&nbsp;&nbsp;<a href="?action=impressum"><img src="images/footer/go_impressum.gif" width="79" height="11" border="0"></a></td>
</tr>
</table>
<?php
/* zeilen zählen */
$sql = "SELECT COUNT(id) FROM partner";
$result = mysql_query($sql);
$anzahl=mysql_fetch_row($result);
/* zeilen zählen ENDE */

/* zufalszahl erstellen von 1 bis "errehnete Zeilen" */
srand(microtime()*1000000);
$zufall = rand(1,$anzahl['0']);
/* zufalszahl erstellen von 1 bis "errehnete Zeilen" ENDE */

/* Zufalls eintrag ausgeben */
$partner = mysql_query("SELECT * FROM partner WHERE id='$zufall'"zwinkern;
while ($row = mysql_fetch_object($partner)) {
?>
<a href="http://<? echo $row->link;?>" target="_blank" title="<? echo $row->name;?>"><img class="img" src="images/buttons/links/<? echo $row->bild;?>" alt="<? echo $row->name;?>"></a>&nbsp;<span class="Stil1">Klicks: <? echo $row->klick;?></span>
<?
}
/* Zufalls eintrag ausgeben ENDE */
?>

Avatar user-255
23.05.2006 18:07

Dir muss man auch alles vorkauen..
<?php
$res = mysql_query('select link from partner order by rand() limit 1'zwinkern or die('mamiii...'zwinkern;
$homie = mysql_fetch_assoc($res);
print $homie['link'];
?>

Those who can, do. Those who can't, teach. # Musik gehört dem Volk! # last.fm
user-137
24.05.2006 11:33

Original von user-255
Dir muss man auch alles vorkauen..


DU hast nach dem Code gefragt ich habe ihn dir gegeben, also wo liegt jetzt dein Problem.
Aber trotzdem thx, hat geklappt!

Avatar user-255
24.05.2006 11:40

Ich muss feststellen, dass user-182 !== user-255 und dass du auch einfach mal nach bspw. "order by rand()" suchen hättest können.

Those who can, do. Those who can't, teach. # Musik gehört dem Volk! # last.fm
user-137
24.05.2006 11:47

Hab ich auch:

http://de3.php.net/manual-lookup.php?pattern=order+by+rand%28%29&lang=de

Hab aber nicht's gefunden! Ich suche schon inder Doku, mehr als du denkst!

Avatar user-255
24.05.2006 12:07

Original von user-137
Hab aber nicht's gefunden!

Du suchst ja auch nach MySQL Befehlen im PHP manual zwinkern
Warum nicht einfach mal Goole checken? Liefert doch beste Ergebnisse lächeln

Eine tolle MySQL Übersicht findest du übrigens hier: http://ffm.junetz.de/members/reeg/DSP/

Those who can, do. Those who can't, teach. # Musik gehört dem Volk! # last.fm
user-137
24.05.2006 12:20

thx, sowas hab ich gesucht, somit werden die Probleme von bestimmt weniger!

user-307
24.05.2006 12:59

Original von user-255
Eine tolle MySQL Übersicht findest du übrigens hier: http://ffm.junetz.de/members/reeg/DSP/

Oder auch hier: http://dev.mysql.com/doc/refman/4.0/de/index.html (mein persönlicher Favorit in sachen MySQL)

.., Spark