Toon posts:

[php] Not a valid directory resource*

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo ik heb een eenvoudig script geschreven dat een random set images tevoorschijn tovert, maar op sommige servers krijg ik de volgende error.
Hij voert het script wel gewoon goed uit, maar ik snap die error niet helemaal.
Het pad klopt wel gewoon. Hopelijk weet iemand van jullie raad. Alvast bedankt voor de moeite!

ERRORMELDING
Warning: 1 is not a valid Directory resource in header.php on line 29
(regel 29 is while($tmpFile = readdir($handle))


HET SCRIPT

<?
$handle = opendir( "/home/sites/site111/web/demo/images/random" );
$imgArray = array( );

while( $file = readdir( $handle ) ) {
if( $file != "." && $file != ".." ) {
array_push( $imgArray, $file );
}
}
closedir( $handle );

mt_srand( (double)microtime( ) * 1000000 );

echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td>[img]\"images/welkom.gif\"[/img]</a></td>";
$images = array();
$theList = array();
while($tmpFile = readdir($handle))
if($tmpFile != '.' && $tmpFile != '..')
$theList[] = $tmpFile;

srand ((float) microtime() * 10000000);
$theRandomList = array_flip($theList);
foreach($theList as $theImage)
; // do something with '$theImage'

$x = 0;
while ($x <= 7) {

$randval = mt_rand( 0, sizeof( $imgArray ) - 1 );
if (!in_array($randval,$images)) {
if (substr($imgArray[$randval],-4) == ".jpg") {
print( "<td>[img]\"images/random/"[/img]</td>" );

$images[] = $randval;
$x = $x + 1;
}
}

}

echo "</tr></table>";
?>

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 14-07 14:28

thomaske

» » » » » »

bestaat /home/sites/site111/web/demo/images/random wel?

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • HunterPro
  • Registratie: Juni 2001
  • Niet online
doe eens [php] tags gebruiken?

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
de fout zal inderdaad zijn wat Thomaske zegt; de directory kan ie niet vinden; geeft dan 1 terug; en 1 is geen geldige directory-pointer.

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

D2k

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<? 
$handle = opendir( "/home/sites/site111/web/demo/images/random" ); 
$imgArray = array( ); 

while( $file = readdir( $handle ) ) 
{ 
    if( $file != "." && $file != ".." ) 
    { 
        array_push( $imgArray, $file ); 
    } 
} 
closedir( $handle ); 

mt_srand( (double)microtime( ) * 1000000 ); 

echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td><img border=\"0\" src=\"images/welkom.gif\" width=\"120\" height=\"60\" lowsrc=\"Laden...\"></a></td>"; 

$images = array(); 
$theList = array();
while($tmpFile = readdir($handle))
if($tmpFile != '.' && $tmpFile != '..')
{
    $theList[] = $tmpFile;
}
srand ((float) microtime() * 10000000);
$theRandomList = array_flip($theList); 

foreach($theList as $theImage)
; // do something with '$theImage'

$x = 0; 
while ($x <= 7) 
{
 
    $randval = mt_rand( 0, sizeof( $imgArray ) - 1 ); 
    if (!in_array($randval,$images)) 
    { 
        if (substr($imgArray[$randval],-4) == ".jpg") { 
        print( "<td><IMG SRC=\"images/random/" . $imgArray[ $randval ] . "\"width=\"80\" height=\"60\" border=\"0\" alt=\"Welkom\" lowsrc=\"Laden...\"></td>" ); 
        $images[] = $randval; 
        $x = $x + 1; 
    } 
} 

} 

echo "</tr></table>"; 
?>

overigens is het volgens mij niet jouw eigen script....

Doet iets met Cloud (MS/IBM)


Verwijderd

Topicstarter
Het pad klopt zeker weten en wanneer ik het op een andere server laat uitvoeren doet ie het zonder enige problemen.

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 14-07 14:28

thomaske

» » » » » »

en het pad op die servers zijn niet verschillend

doe eens bovenaan je script:

echo is_dir("/home/sites/site111/web/demo/images/random")

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Verwijderd

Topicstarter
Nee echt niet. Kijk maar ik krijg de volgende error:

Parse error: parse error, expecting `','' or `';'' in /home/sites/site111/web/demo/header2.php on line 17

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

D2k

ja sjaak je kan toch zelf nog wel zien dat er een ; achter moet??

Doet iets met Cloud (MS/IBM)


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 13:51
En als je nou eens een / toevoegt aan $handle. Maakt dat verschil?
Pagina: 1