Avatar billede jahamnej Nybegynder
17. oktober 2003 - 00:43 Der er 12 kommentarer og
1 løsning

ekstra linie i random pic

Hejsa,

Jeg forsøger at få et lille script til at funge ordentligt, men det laver ikke andet end at pisse mig af. Af en eller anden underlig grund får jeg tilføjet en linie under mit "random picture".

Jeg bruger blot include metoden, altså til randompic.php som ser sådan ud...

<?

function random($max) {

  static $startseed = 0;

    if (!$startseed) srand((double)microtime()*getrandmax());

    return (rand()%$max);

}

$fil = "fil.txt";

$open = file($fil);

echo $open[random(count($open))];

?>


Findes der noget i dette stykke kode, som tilføjer den ekstra linie?
Avatar billede detox Nybegynder
17. oktober 2003 - 00:59 #1
Der er ikke noget i ovenstående kode der tilføjer en ekstra linie. Kan det være selve indholdet i filen der gør det?
Avatar billede jahamnej Nybegynder
17. oktober 2003 - 01:02 #2
Synes jeg heller ikke der var... hmmm. Der er ikke noget galt i nogle af koderne, og billedet er også fint.

Ret underligt faktisk. Den gør det i IE, men der var ingen problemer i Mozilla. Nu er jeg bare forvirret...
Avatar billede detox Nybegynder
17. oktober 2003 - 01:07 #3
Hvordan ser et eksempel på en linie fra 'fil.txt' ud?
Avatar billede jahamnej Nybegynder
17. oktober 2003 - 01:10 #4
meget simpelt... sådan her...

<img src="randompic/001.jpg">
Avatar billede detox Nybegynder
17. oktober 2003 - 01:20 #5
Jeg prøvede (en forenklet udgave) på IE og jeg kan ikke genskabe problemet her.

<?
$fil = "fil.txt";
$open = file($fil);
$rand = mt_rand(0,count($open)-1);
echo $open[$rand];
?>
Avatar billede jahamnej Nybegynder
17. oktober 2003 - 01:28 #6
hjalp heller ikke...

hmm... den tilføjer faktisk ikke en linie, nu når jeg kigger nærmere... den skubber bare til den næste del... hvis du forstår...

Det er en del af grafikken på hjemmesiden. Toppen af den, som bruger 5 billeder. Det 3 skal skiftes ud... altså random blah blah... og den burde jo bare indsætte billedet, men af en eller anden grund vil IE have et lille stykke med efter det. Hvilket Mozilla ikke vil... totalt forvirret.
Avatar billede detox Nybegynder
17. oktober 2003 - 01:57 #7
Kunne man se et link til siden?
Avatar billede jahamnej Nybegynder
17. oktober 2003 - 02:07 #8
Jeg har lige pillet det hele ned... desværre. Gider ik' smide det op igen. Jeg tror simpelthen ikke det kan lade sig gøre med dette script. Når Mozilla sagtens kan vise det ordentligt, må det jo være noget som IE ikke forstår.

Man kunne måske prøve med et andet (men lignende) script... er det noget man kunne få lidt hjælp med?
Avatar billede detox Nybegynder
17. oktober 2003 - 02:11 #9
Nej, det ved jeg ikke lige hvad er du ønsker så. Det må du nok beskrive lidt nærmere.
Avatar billede jahamnej Nybegynder
17. oktober 2003 - 06:03 #10
Nå... så fik man lige et par timer på øjet, gaaaaaaaaaaaaaaaab

Og hvorfor så ikke lige prøve igen?
Jeg fandt en MEGET SIMPEL udgave, som ser sådan ud...

<?srand ((double) microtime() * 1000000);?>
<img src = "randompics/<?printf(mt_rand(1,9))?>.jpg">

Nu sidder billedet som det skal - perfekt faktisk, MEN den skifter ikke billedet ud. Det er bare det samme hver eneste gang. Hvor ligger fejlen?
Avatar billede sukos Juniormester
17. oktober 2003 - 06:33 #11
Hvad med:

echo trim($open[random(count($open))]);

file() tager jo liniskift med for hver linie
Avatar billede jahamnej Nybegynder
17. oktober 2003 - 06:47 #12
JUBIII!!!

Det var simpelthen løsningen. Den var guld værd! Takker.

Svar lige, så du kan få point :)
Avatar billede sukos Juniormester
17. oktober 2003 - 07:06 #13
Jo tak! :O)
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