Henryk Plötz: bild austausch, speziell!!

Beitrag lesen

Moin,

Also dein Code ist etwas unübersichtlich, also hab ich das mal auf Arrays umgemodelt. Ausserdem verstehe ich den Umweg mit der Textdatei nicht und habe den zum besseren Verständnis (und damit ich das lokal testen kann) auf rand() umgebogen.

<?php
session_start(); // <- Da fehlten (), wir sind ja hier nicht bei Pascal ;)

srand((double)microtime()*1000000);

$dateien['flash'] = Array( "source1.swf", "source2.swf", "source3.swf",
                           "source4.swf", "source5.swf", "source6.swf",
                           "source7.swf", "source8.swf", "source9.swf" );
$dateien['text'] = Array( "text1.gif", "text2.gif", "text3.gif",
                          "text4.gif", "text5.gif", "text6.gif",
                          "text7.gif", "text8.gif", "text9.gif" );

if (!isset($HTTP_SESSION_VARS["randomwert"])) {
 $randomwert = rand(0, count($dateien['flash'])-1);
 session_register("randomwert");
} else $randomwert = $HTTP_SESSION_VARS["randomwert"];

// Das da ist hier wohl überflüssig: {

print "<br><br>->";
print $randomwert;

$randflash = $dateien['flash'][$randomwert];
$randtext = $dateien['flash'][$randomwert];

print $randflash;
print $randtext;
// Das da ist dann wohl auch überflüssig: }
?>

So, jetzt sehe ich auch dein Problem (bzw. es ist gleich verschwunden). Deine letzte if()-Abfrage hat $randflash und $randtext in jedem Fall überschrieben: Wenn $randomwert auf 9 gesetzt war, wurden sie mit source9.swf bzw. text9.gif belegt, in _jedem_ anderen Fall mit stand.swf bzw. standtext.gif.

Da aus deinem Code nicht ersichtlich war, wann sie wirklich so belegt werden sollten, ist das hier rausgefallen. Anmerkung: Wenn deine Dateien wirklich alle so heissen, solltest du vielleicht die Namen gleich komplett zusammenbauen ($randflash = "source".$randomwert.".swf";) und kannst dir das Array sparen.

PS: Das Ding zählt jetzt richtig[tm], d.h. $randomwert gleich 0 entspricht $randflash gleich "source1.swf".

--
Henryk Plötz
Grüße aus Berlin

* Help Microsoft combat software piracy: Give Linux to a friend today! *