Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

Wer kann bei php code helfen?

firstlevel

New member
Registriert
03. März 2004
Beiträge
2.045
Reaktionspunkte
1
Wer kann mir bei unten stehendem Code helfen?
Ich benutze es für die zufällig Anzeige von Bannern oder Links auf meinen Seiten.

Es soll dahingehend geändert werden das ich oben oder vor dem Print eine Variable eingeben kann, die beeinflusst das z.B. zwei oder vier Banner gleichzeitig, untereinander ausgegeben werden. Aber nicht schon welche die angezeigt werden. Es sollen also nur drei unterschiedliche Banner eingeblendet werden. Bei diesem Beispiel natürlich ungünstig, ich habe im Live Betrieb ca. 20 array-Werte.

Wer kann helfen?




PHP:
<?php
$ads = array();

$ads[] = <<<END_FRAME1
<a style="left:50px; " href="http://www.xxx.com/" target="_blank">
<img src="http://www.xxx.com/banners/468_60.gif" width="468" height="60" border="0"></a>
END_FRAME1;

$ads[] = <<<END_FRAME2
<a style="left:50px; " href="http://www.xxx.com/" target="_blank">
<img src="http://www.xxx.com/banners/468_60.gif" width="468" height="60" border="0"></a>
END_FRAME1;

$ads[] = <<<END_FRAME3
<a style="left:50px; " href="http://www.xxx.com/" target="_blank">
<img src="http://www.xxx.com/banners/468_60.gif" width="468" height="60" border="0"></a>
END_FRAME1;

print '<center>' . $ads[array_rand($ads)] . '</center><br />';

?>
 
hi,

bin mir nicht sicher, ob ich dich richtig verstanden habe, falls ja, musst du hier gar nichts programmieren, sondern einfach den zweiten optionalen Parameter von array-rand verwenden:

PHP: array_rand - Manual

Also ungefähr sowas:

PHP:
$adsCount = '3';
print '<center>' . $ads[array_rand($ads,$adsCount)] . '</center><br />';

das oben gezeigte Beispiel würde dir 3 zufällige Elemente aus dem Array anzeigen. Pass aber auf, dass die Anzahl der Elemente, die zufällig angezeigt werden soll ($adsCount) nicht größer wie die Anzahl Elemente in deinem Array sind:

PHP:
$adsCount = '3';
if($adsCount > count($ads)) $adsCount = count($ads);
print '<center>' . $ads[array_rand($ads,$adsCount)] . '</center><br />';
 
probier mal das:

PHP:
#cnt:{1..count($ads)}  
$cnt=2;
$tmp_ads=array_rand($ads,$cnt);
for($i=0;$i<count($tmp_ads);$i++)  
{
print '<center>' . $ads[$tmp_ads[$i]] . '</center><br />';
}

Gruesse
Holger
 
Zurück
Oben