[php] wat is er fout aan deze code?

Pagina: 1
Acties:

  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
Header("Content-type: image/gif");
Header("Cache-Control: no-cache, must-revalidate");
$imgdir='images/';
if ($handle=opendir($imgdir)) {
    while (($file = readdir($handle))!==false) {
        if (ereg(".gif",$file)){
            $filelisting[]="$file";
            }
    }
$totalfiles=sizeof($filelisting);
closedir($handle);
}
srand((double)microtime()*1000000);
$nr=rand(1,$totalfiles);
$fn=fopen("images/$nr.gif","r");
fpassthru($fn);
?>

Het script kijkt hoeveel GIF bestanden er in de submap images staan, en haalt er dan eentje random uit.

De map images bestaat (met 2 files erin, 1.gif en 2.gif)
maar als ik dit script open krijg ik een kruisje.

* dreeke snapt er niks meer van, het HEEFT wel gwerkt!! |:(

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

doet eens echo ($nr);
:?

  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
Op zondag 20 januari 2002 15:01 schreef wasigh het volgende:
doet eens echo ($nr);
:?
Hoe doe ik dat in een PHP die een image als uitvoer heeft? (ben n00b :P)
Als ik er dan echo $nr tussenzet heeft het toch geen uitvoer?

Kan ik dan de header veranderen naar een html ?

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

Op zondag 20 januari 2002 15:03 schreef dreeke het volgende:

[..]

Hoe doe ik dat in een PHP die een image als uitvoer heeft? (ben n00b :P)
Als ik er dan echo $nr tussenzet heeft het toch geen uitvoer?

Kan ik dan de header veranderen naar een html ?
gewoon header weglaten :)

Doet iets met Cloud (MS/IBM)


  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
Done, hij laat nu random een 1 of een 2 zien, dus dat is goed.
Het lijkt me dat hij de plaatjes niet kan vinden, maar dat vind ik dan vreemd want die staan gewoon in de subdirectory images.

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
PHP:
1
2
3
4
5
6
7
8
<?
Header("Content-type: image/gif");
Header("Cache-Control: no-cache, must-revalidate");
srand((double)microtime()*1000000);
$nr=rand(1,2);
$fn=fopen("images/$nr.gif","r");
fpassthru($fn);
?>

dit werkt ook niet.
waarom kan ie de plaatjes nou niet vinden :?

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

zet er eens gewoon 1.gif neer?
of heb je misschien een hoofdletter probleem?

Doet iets met Cloud (MS/IBM)


  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
Op zondag 20 januari 2002 15:11 schreef D2k het volgende:
zet er eens gewoon 1.gif neer?
of heb je misschien een hoofdletter probleem?
ook al gedaan....
de bestanden heten 1.gif en 2.gif (zonder hoofdletters)

maar ik heb net een ander random icon scriptje uit een (werkende!) map gehaald, en gekopieerd.
Sinds ik de kopie in een andere map heb uitgevoerd doet de originele het ook niet meer :{

:? :? :?

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
http://dreeke.net:666/icons.zip

zoals ik daar in heb staan werkt het bij mij niet

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
OK we zijn tot de conclusie gekomen dat ik op mijn server geen GIFjes kan openen via DAT script.

De meeste plaatjes worden een kruisje en enkele plaatjes worden half geladen in zwart/wit.

Op een andere server werkt het script wel.
Een ander PHP script dat GIFjes laat zien werkt wel op mijn server (dat is alleen geen random icon script)

Wat kan ik hier nou aan doen :?

Bij gebrek aan uw reclame staat hier mijn handtekening.


Verwijderd

je eerste script werkt bij mij gewoon hoor :?

  • dreeke
  • Registratie: December 2000
  • Laatst online: 31-10-2025

dreeke

outdated icon

Topicstarter
Heb Apache geupdate naar de nieuwste versie, en PHP is ook de nieuwste versie, maar het wil maar niet werken bij mij :'(

Bij gebrek aan uw reclame staat hier mijn handtekening.


  • drZymo
  • Registratie: Augustus 2000
  • Laatst online: 09-08 22:22
Ik zou het volgende veranderen :
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?
Header("Content-type: image/gif");
Header("Cache-Control: no-cache, must-revalidate");
/* maak het path eens absoluut */
$imgdir='c:/images/';
if ($handle=opendir($imgdir)) {
    /* zelf counter bijhouden is efficienter */
    $totalfiles = 0;
    /* !== is iets teveel. != doet het ook al ;) */
    while (($file = readdir($handle))!=false) {
        /* substr is sneller als reguliere expressie */
        if (substr($file, -4) == ".gif")){
            /* " " zijn niet nodig hier */
            $filelisting[$totalfiles++]=$file;
            }
    }
    closedir($handle);
}
srand((double)microtime()*1000000);
$nr=rand(1,$totalfiles);
/* pak hier ook es absolute path */
$fn=fopen("c:/images/$nr.gif","r");
fpassthru($fn);
?>

dus...

"There are three stages in scientific discovery: first, people deny that it is true; then they deny that it is important; finally they credit the wrong person."


Verwijderd

bij mij werkt het ook gewoon...
PHP4 en Apache op WinXP
Pagina: 1