Débutant en php, je teste actuellement des scripts sous wamp mais je ne parviens pas à le configurer correctement. Je tente de lire le contenu d'un fichier sur mon pc (sous windows) et, si opendir, readdir et même un preg_match sur le nom des fichiers fonctionnent, fopen déclenche un "failed to open stream: No such file or directory", quel que soit le dossier, le fichier, etc.
Je précise qu'une amie a testé certains de mes scripts sous easyphp et qu'ils fonctionnent.
Je suppose donc que je n'ai pas su paramétrer les diverses autorisations nécessaires, mais je ne trouve nulle part d'indications claires. Merci de votre aide !
Je ne pense pas que cela vienne de wampserver, mais à la vue du message d'erreur...le script ne trouve pas le fichier ou le dossier où se trouve le fichier (mais je ne suis pas un pro).
En recherchant chez notre "ami" (google) je trouve cela :
Cette erreur se produit lorsque vous tentez d'accéder par quelque fonction que ce soit à un fichier ou dossier qui n'existe pas.
Résolution du problème :
Supprimer la ligne posant problème si elle n'est pas indispensable pour l'exécution du script. Si on a besoin de tester l'existence du fichier on peut utiliser la fonction file_exists() de cette manière : <?php if(file_exists('fichier.ext')) { //code ayant besoin du fichier ici } ?>
Pour un dossier on peut utiliser la fonction is_dir() de cette manière :
<?php if(is_dir('dossier')) { //code ayant besoin du dossier } ?>
Ah ben oui mais non ! C'est gentil d'avoir répondu si vite, merci, mais, dans mon cas, ça ne marche pas.
- La ligne qui pose problème est indispensable, puisque c'est fopen qui cause l'erreur... et que la raison d'être du script, c'est que j'ai besoin de lire ces fichiers.
- PHP trouve ces fichiers, il me confirme qu'ils existent et il reconnaît même les extensions. L'erreur ne survient que lorsque je tente d'accéder au contenu de ces fichiers.
Là où tu as raison, c'est que ça ne vient peut-être pas exactement du paramétrage de Wamp, mais de celui de PHP...
Hélas... Je n'ai trouvé qu'un "allow_url_fopen" dans mon php.ini et il était déjà on.
J'en ai profité pour relire tout le php.ini, mais je n'ai pas trouvé d'interdictions de ce style. Il est vrai que j'ignore tant de choses que j'ai pu en rater.
Au secours again ! Merci à ceux qui ont répondu et, d'avance, à ceux qui voudront bien se pencher encore sur mon problème.
J'ai aussi XP Home SP2 et des partitions FAT32 : on croirait presque que j'ai copié. Je suis aussi administrateur... donc je cours voir le lien que tu m'indiques. Merci.