En tiedä php-ohjelmoinnista paljon mitään, joten tarvitsen apua. Alle olen yrittänyt väkertää sivua joka arpoisi jonkin www-sivun ja uudelleenohjaisi käyttäjän sinne. Tämän sivun laittaisin kotisivuilleni, jotta muutkin voisivat käyttää sitä. Siitä tulisi vahtuva aloitussivu selaimeen.
Mutta mikä koodissa on vikana kun se ei toimi?
<?php $osoite = array(); $osoite[] = 'http://www.mbnet.fi' //1. osoite $osoite[] = 'http://www.mozilla.fi' //2. osoite $osoite[] = 'http://www.telkku.com' //3. osoite, lisää tarvittaessa //arpoo osoitteen shuffle($osoite); //selaimen uudelleenohjaus header("Location: §osoite"); //tulostaa tekstin <body> <html> <body bgcolor="#CCCCCC"> <?php echo "Jos linkki ei toimi, <a href='§osoite'>paina tästä</a>. <br><br>"; ?> <?php echo "Mene <a href='../index.html'>Etusivulle</a>."; ?> </body> </html> ?>
Toi shuffle sekoittaa taulukon, joten sun pitää sen jälkeen valita sieltä vielä joku alkio, vaikka eka. Eli $arvottu = $osoite[0], ja käytä sit tuota $arvottu-muuttujaa jatkossa. Sulla on myös tuolla parissa kohtaa $-merkin sijaan §-merkki.
Toi shuffle-kohta menee vähän ohi minulta. Voisitko tehdä esimerkkikoodin siitä mikä on vialla. Ja korjausehdotuksen enemmän selkokielellä, kun minä olen vasta aloittelija tässä php koodaamisessa enkä tiedä kovin paljoa php:stä.
<?php $osoite = array('http://www.mbnet.fi', 'http://www.mozilla.fi', 'http://www.telkku.com'); //rekoittaa arrayn shuffle($osoite); //selaimen uudelleenohjaus header("Location: ".$osoite[0]); //tulostaa tekstin echo "<body> <html> <body bgcolor=\"#CCCCCC\"> Jos linkki ei toimi, <a href=\"".$osoite[0]."\">paina tästä</a>. <br><br> Mene <a href=\"../index.html\">Etusivulle</a>. </body> </html>"; ?>
Ei kaikkea tarvi kyllä nuin laittaa php:n sisään, kuten laitoin esimerkissäni, mutta tuo tuntuisi ehkä jopa toimivan.
Joo, nyt näyttää toimivan. Kiitokset avusta!!
niin tai sitten käyttää vain $arvottu=array_rand($osoite);
§osoite ? varmaankin $osoite.
§ != $ vai?
Lebe80 kirjoitti:
§osoite ? varmaankin $osoite.
§ != $ vai?
$. sinne oli tullut vahinhossa §-merkkejä, mutta ne on nyt korvattu oikeilla merkeillä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.