[PHP] file() kan maar om een bepaalde tijd gebruikt worden

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Ethnocentrix
  • Registratie: Augustus 2002
  • Laatst online: 08:55

Ethnocentrix

Rijkserkend prutser

Topicstarter
Ik heb een scriptje gemaakt om een (CSV)bestand dat op een andere server staat in te lezen.

dr is alleen 1 probleempje en dat is dat dat maar om een bepaalde tijd kan. Als je dus op je pagina komt, en dan geljik op refresh drukt, krijg je deze foutmelding:
Warning: php_hostconnect: connect failed in /mnt/bootdev/router/www/index.php on line 47

Warning: file("ftp://...@192.168.0.2:5021/info/MBM 5 Interval Log.csv") - Bad file number in /mnt/bootdev/router/www/index.php on line 47
Het script om het bestand in te lezen is dit:
PHP:
1
2
3
$regels = file('ftp://mbm@192.168.0.2:5021/info/MBM 5 Interval Log.csv'); 
$sysinfo = explode(";", $regels[1]); 
echo "last updated:".$sysinfo[1];


Als ik het bestand op de server copieer en vdan op laat vragen werkt het wel.
Weet iemand hoe ik dit op kan lossen?
Alvast bedankt!

edit: het wordt nog vager, want in de logs staat dat het bestand wel degelijk opgehaald wordt! :?

[ Voor 9% gewijzigd door Ethnocentrix op 27-05-2003 21:33 ]

You know you're an engineer if you have no life & can prove it mathematically.


Acties:
  • 0 Henk 'm!

  • bigben04
  • Registratie: December 2001
  • Laatst online: 30-08 20:47
Op de manpage staat een tip van iemand m.b.t. problemen bij het openen van de files:
It appears that the file() function causes file access problems for perl cgi scripts accessing the same files. I am using Perl v5.6.0 in linux with PHP/4.0.4pl1. After running a php app using the file() function, any perl cgi trying to access the same file randomly dies returning an internal server error: premature end of script headers.

The simple fix is to use fopen(), fgets() and fclose() instead of file().
Misschien kan je dus ook proberen om fopen etc. te gebruiken i.p.v. file.

Acties:
  • 0 Henk 'm!

  • sjoerdb2
  • Registratie: Juli 2001
  • Laatst online: 09-05 09:52
En misschien je php script het bestand laten sluiten dmv fclose?

[ Voor 4% gewijzigd door sjoerdb2 op 28-05-2003 00:25 ]


Acties:
  • 0 Henk 'm!

  • bigben04
  • Registratie: December 2001
  • Laatst online: 30-08 20:47
sjoerdb schreef op 28 May 2003 @ 00:24:
En misschien je php script het bestand laten sluiten dmv fclose?
Dat is niet nodig als je file() gebruikt.

Acties:
  • 0 Henk 'm!

  • Ethnocentrix
  • Registratie: Augustus 2002
  • Laatst online: 08:55

Ethnocentrix

Rijkserkend prutser

Topicstarter
fopen werkt toch anders dan file()???
Ik daht dat file() het bestand inleest in een array, en fopen(0 het bestand inleest in een variabele, en daar heb ik niet zo veel aan.

Ik ga eerst eens proberen mn PHP parser te updaten, want ik gebruik nu versie 4.0.nogwat.

You know you're an engineer if you have no life & can prove it mathematically.