Avatar billede rasmus_a Nybegynder
31. juli 2004 - 10:58 Der er 15 kommentarer og
1 løsning

Randomizing fra fil med 3 vars.

Hej

Jeg har en fil der ser sådan her ud:

Tekst1, Author1, Dato1
Tekst2, Author2, Dato2
..
Tekst50, Author50, Dato50

og nu skal jeg bruge et script der henter de 3 variabler i en tilfældig linie fra filen.

Det er vigtigt man kan skrive variable 1 et sted og variabel 3 et helt andet sted på siden.

Håber I forstår
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 10:58 #1
det gælder også variabel 2 ;)
Avatar billede detox Nybegynder
31. juli 2004 - 11:10 #2
Noget i den her stil:

$fil = 'vars.txt'; // Filnavn
$lines = file($fil);
$valg = rand(0, count($lines)-1);
$arr = split(',', $lines[$valg]);
echo "$arr[0] - $arr[1] - $arr[2]";
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 12:07 #3
det virker fint men jeg er bange for jeg lavede en fejl.
Variablerne står nemlig sådan her:

"Tekst1", "Author1", "Dato1"

Kan du ændre det så det virker med ""'erne.
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 12:07 #4
=)
Avatar billede detox Nybegynder
31. juli 2004 - 12:44 #5
Er det ikke i filen de står sådan?
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 13:14 #6
jo MED "er - dvs hvis jeg skriver "bla bla, bla bla" i første variabel så bliver de sidste to bla'er jo variabel 1 - forstår du?
Avatar billede detox Nybegynder
31. juli 2004 - 14:23 #7
Ja, så kan du jo ikke bruge komma'er til at opdele dine data.
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 14:26 #8
hvad gør jeg så?

$arr = split(',', $lines[$valg]);

Kan jeg ændre de 2 ,er til f.eks. et # og så bruge det til at adskille dem?
Avatar billede detox Nybegynder
31. juli 2004 - 14:28 #9
Ja, det kan du godt. Bare der så ikke er # i nogle af dine data.
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 14:33 #10
hmm det giver følgende fejl:

Parse error: parse error, unexpected T_ECHO in /var/www/html/web/quote/index.php on line 17

Linie 17 er:
echo "$arr[0]";
Avatar billede detox Nybegynder
31. juli 2004 - 14:41 #11
Hvad står på linie 16?
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 14:44 #12
$arr = split('#'# $lines[$valg]);
Avatar billede rasmus_a Nybegynder
31. juli 2004 - 14:52 #13
jeg bliver nødt til at smutte kl 15:02 - bare så du ved. men jeg kommer naturligvis tilbage med points når du har smidt et svar :)
Avatar billede detox Nybegynder
31. juli 2004 - 15:27 #14
$arr = split('#'# $lines[$valg]);

ændres til:

$arr = split('#', $lines[$valg]);
Avatar billede detox Nybegynder
31. juli 2004 - 15:28 #15
Jeg er osse nødt til at løbe. Her er et svar, hvis du kan bruge det.
Avatar billede rasmus_a Nybegynder
01. august 2004 - 12:09 #16
det virker :D
mange tak for hjælpen, detox. God weekend.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester