Warning: fopen...

Résolu/Fermé
nickleus - 19 janv. 2008 à 15:04
 Kheldar - 18 mai 2010 à 10:23
Bonjour,
Voila je cherche à resoudre cette erreur:

Warning: fopen(extract/import_190108_1411.txt) [function.fopen]: failed to open stream: No such file or directory in C:\adresse\reseau\extact_reseau\import.php on line 14

Je ne comprend car j'utilise la exactement la syntax qu'a la ligne 6. Pour info la variable '$txt' contient la chaine de caractere "import_190108_1411.txt". Voici le script:

$dir="../reader/";
$namefile="lastLoad.txt";

//Ouverture du fichier lastLoad.txt pour connaitre le nouveau fichier à importer.
if($file=fopen($dir.$namefile, "r")){ <---------------LIGNE 6
$texte=fgets($file);
$importTxt=explode(" ", $texte);
$txt=$importTxt[1];

$dirExtract="extract/";

//ouverture du fichier pour improter les variables des parrains et des filleuls.
if($openFile=fopen($dirExtract.$txt, "r")){ <--------LIGNE 14
$total=count($ligne=file($dirExtract.$txt))-1;

for($i=0; $i<=$total; $i++){
$explodeLigne=explode(" ", $ligne[$i]);
$var1[]=$explodeLigne[0];
$var2[]=$explodeLigne[1];}}}

Comme deux serveaux vallent mieux qu'un, j'espere que le votre sera plus astucieux que le miens.
merci d'avence.

7 réponses

Utilisateur anonyme
19 janv. 2008 à 15:12
Salut nickleus,

"Warning: fopen(extract/import_190108_1411.txt) [function.fopen]: failed to open stream: No such file or directory in C:\adresse\reseau\extact_reseau\import.php on line 14" dit qu'il n'y a pas le fichier que tu as indiqué, et PHP ne le créant pas il y a une erreur.

Essaye avec
$dirExtract="/extract/";
Si extract est un dossier à la racine de ton site.

Cordialement,
Keanjyto.
0
Le dossier extract n'est pas à la racine du site.

Le script et le dossier extract sont dans le meme dossier qui s'appel extract_reseau.
Et dans le dossier extract, je viens de regarder, il y a bien le fichier txt : import_190108_1411.txt.

j'ai tout de meme essayer la solution que vous m'avez proposé mais cela de fonction pas.

j'utilisela fonction fopen() avec les meme syntax dans d'autres scripts et ils fonctionnent correctement.

je ne comprend pas pourquoi ca ne marche pas ici.

Est ce qu'il y a une autre solution ?
0
Utilisateur anonyme
19 janv. 2008 à 15:35
Assure toi d'avoir créer le fichier import_190108_1411.txt. Sinon, je ne vois pas le code à l'air bon mais je n'excelle pas en PHP donc essaye si quelqu'un peut donner son avis ce serai bien.
0
Arretons de chercher j'ai trouvé mon erreur,
je vais extrait d'un fichier txt le nom du fichier a ouvrir.

dans mon exemple le fichier lastLoad.txt est ou je vais chercher le nom du fichier import_190108_1411.txt
Il se trouve qu'il y avait un espace avant et je ne le prennais pas en compte.

voila !!!

merci pour l'aide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Voila la solution

if($file=fopen($dir.$namefile, "r")){
$texte=fgets($file);
$importTxt=explode(" ", $texte);
$txt=" ".$importTxt[1]; <------LIGNE 14


mais c'est du bricolage il faut que je trouve une autre solution pour virrer l'espace
0
Utilisateur anonyme
19 janv. 2008 à 15:54
Ok merci d'avoir posté la solution. Cela peut aider d'autres personnes.
0
réponse tardive mais cela peut toujours intéresser :

La fonction trim($machaine) est très pratique. Elle permet d'enlever les espaces au début et à la fin d'une chaine de caractères, tout en conservant le reste de la chaine intact, même s'il y a des espaces.
0