FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Nykomling
|
Hej!
Osäker på vart denna fråga ska postas så jag testar mig fram. Jag undrar om någon vet hur man skapar en sida men en slags generator funktion? Exempel på vad jag menas kan ses här: http://www.randomphrase.com/ Jag har sökte på google hur man får till det men jag har inte hittat någon vettig info. Funktionen jag vill uppnå är att man kommer in på sidan och där finns då en slumpmässigt framtagen fras, man ska sedan kunna uppdatera och en nya fras kommer upp. Fraserna ska vara skrivna av sidans skapare. |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Flitig postare
|
Du lägger in en massa fraser i en databas (MySQL exempelvis). Sedan slumpar du ut olika fraser med ett server side script (PHP exempelvis).
|
||
![]() |
![]() |
![]() |
#3 | |||
|
||||
Medlem
|
Väldigt lätt om jag förstod dig rätt.
En databas som håller i alla fraser. En simpel kod som skriver ut en fras från databasen. Använder du dig av sql & php räcker det typ med följande: Kod:
$q = "SELECT fras FROM frastabell ORDER BY RAND() LIMIT 1"; $r = mysql_fetch_assoc($q); echo $r['fras']; Dvs en länk till startsidan kommer slumpa fram en ny (inte 100% en ny) Väldigt förenklat men är du någorlunda insatt så borde det inte vara några problem. |
|||
![]() |
![]() |
![]() |
#4 | |||
|
||||
Bara ett inlägg till!
|
<?php
echo `fortune`; ?> |
|||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Flitig postare
|
Citat:
1. Skall fraserna vara slumpmässiga... 1.1 ...ord som slumpmässigt slängs ihop för att skapa en "fras"? 1.2 ...färdiga fraser/meningar/ord som bara slumpas fram ett och ett? Båda av ovanstående går att åstadkomma med både PHP (samt andra server-side skript) och javascript (client-baserat), såklart lite beroende på hur många fraser som är tänka. Hade du tänkt ha många, många fraser rekommenderas att du använder server-side skript och en databas som håller alla fraser. Men basic exempel kan ändå se ut: PHP: Kod:
<? //Mina fraser i en array (detta skulel även kunna hämtas via en databas, mysql förslagsvis) $i = 0; $minaFraser[$i] = "Please don't burp in my face!"; $i++; //+1 $minaFraser[$i] = "May I have ketchup with the fillet of beef?"; $i++; $minaFraser[$i] = "The turtle brings wheat at dawn!"; $i++; $minaFraser[$i] = "I'll be back!"; $i++; $minaFraser[$i] = "Shaken, not stirred!"; $i++; $minaFraser[$i] = "Should we go home to me, or do you find me repulsive?"; $i++; $minaFraser[$i] = "It wasn't me! I wasn't even there!"; $i++; $minaFraser[$i] = "It seemed like a good idea at the moment!"; //Nu vill vi slänga upp en av dessa fraser slumpmässigt för besökaren. $x = rand(0, sizeof($minaFraser)-1); //skapa en slumpmässigt nummer mellan 0 och "så stor som vår array är" echo $minaFraser[$x]; //visa för besökaren ?> Slumpa två ord och lägg ihop. Kod:
<? //Mina fraser i en array (detta skulel även kunna hämtas via en databas, mysql förslagsvis) $i = 0; $minaFraser[$i] = "energized"; $i++; //+1 $minaFraser[$i] = "bandits"; $i++; $minaFraser[$i] = "hit"; $i++; $minaFraser[$i] = "sweets"; $i++; $minaFraser[$i] = "jackass"; $i++; $minaFraser[$i] = "parasite"; $i++; $minaFraser[$i] = "libido"; $i++; $minaFraser[$i] = "cowboys"; //Nu vill vi slänga upp en av dessa fraser slumpmässigt för besökaren. $x = rand(0, sizeof($minaFraser)-1); //skapa en slumpmässigt nummer mellan 0 och "så stor som vår array är" $y = rand(0, sizeof($minaFraser)-1); //skapa en slumpmässigt nummer mellan 0 och "så stor som vår array är" echo $minaFraser[$x] . ' ' . $minaFraser[$y];; //visa för besökaren ?> Man skulle kunna skapa två "arrays" ett där man hämtar del 1 och ett där man hämtar del 2, för att vara säker på att sammanslagningen alltid blir bra. Samma sak med ovan, det går också att göra med nästan identisk kod i JavaScript. Hoppas det hjälper lite och lycka till! |
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Nykomling
|
Citat:
Jag vill skapa färdiga(hela) meningar som sedan slumpas fram, det ska alltså inte komma upp slumpmässigt kombinerade ord. |
||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Bara ett inlägg till!
|
Förenklat PHP-exempel:
Kod:
<?php //Skapa en array $fraser = array(); //Lägg in fraser i arrayen $fraser[] = 'Hej på dig'; $fraser[] = 'Whoa! Cool!'; $fraser[] = '=)'; //Slumpa fram en fras ($vald_fras kommer innehålla en av fraserna ovan) $vald_fras = $fraser[array_rand($fraser)]; //Skriv ut frasen echo $vald_fras; ?> |
|||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Flitig postare
|
Citat:
![]() |
||
![]() |
![]() |
Svara |
|
|