Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/06/2007, 11h08   #1
Invité de passage
 
Inscription : mars 2004
Messages : 28
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 28
Points : 3
Points : 3
Par défaut [CSV] file_get_contents et warning failed to open stream

Bonjour,

J'ai un script qui upload un fichier csv sur un serveur unix et qui parse son contenu pour injecter les données remontées dans une base de données.

Une fois le fichier choisi par l'utilisateur, le script affiche direct ceci :

Citation:
Warning: file_get_contents(C:/exprecouv_20070608.csv) [function.file-get-contents]: failed to open stream: No such file or directory in /data/www/asr/import_erics.php on line 18

J'ai regardé avec un technicien, le php.ini du serveur a l'air correctement configuré. Evidemment, le script fonctionne en local avec Easyphp, mais voilà, il bloque sur le serveur. Le même warning s'affiche avec un fopen.
J'ai essayé de changer les "\" de Windows en "/" pour unix, mais ça ne change rien.
Des idées ?


Merci.
Teppic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 12h21   #2
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Code :
C:/exprecouv_20070608.csv
Il sort d'où ce chemin ? C'est typiquement un chemin windows, c'est sur que ça risque pas de passer sous *nix...
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 12h23   #3
Invité de passage
 
Inscription : mars 2004
Messages : 28
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 28
Points : 3
Points : 3
J'ai un input de type file pour récupérer un fichier local et faire l'export sur le serveur, en php

Donc oui, c'est un chemin Windows... Ensuite le script fait un file_get_contents sur ce chemin, qu'est ce que je peux faire d'autre ?
Teppic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 12h32   #4
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Citation:
Envoyé par Teppic
qu'est ce que je peux faire d'autre ?
Nous montrer les parties de ton code significatives ?
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 12h39   #5
Invité de passage
 
Inscription : mars 2004
Messages : 28
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 28
Points : 3
Points : 3
Code :
1
2
3
4
5
 
//Ouverture du fichier choisi et récupération du flux qu'il contient
 
$path = str_replace("\\","/",CCGetParam("file"));
$import_erics = file_get_contents("'".$path."'");
Le script d'import proprement dit bloque ici, la suite est la construction de plusieurs requêtes sql, donc sans intérêt.

Ma page d'upload ressemble à ça (générée par CodeCharge Studio) :

Code HTML :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<form name="NewRecord1" action="importExport.php?ccsForm=NewRecord1" method="post" enctype="multipart/form-data">
  <table cellspacing="0" cellpadding="0" border="0">
    <tr>
      <td valign="top">
        <p><strong><font size="2">Importer des données Eric'S</font></strong></p>
 
        <p><input id="Import_File" type="file" name="Import_File">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        <input style="FONT-SIZE: 10px; BACKGROUND-IMAGE: url(Styles/Inrap2/Images/HeaderBg.gif); COLOR: #ffffff; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none" type="button" value="Importer" name="Button_Import"></p>
      </td>
    </tr>
  </table>
  <p>&nbsp;</p>
  <p></p>
  <p>&nbsp;</p>
  <p>
</form>

EDIT : en faisant un print_r($_FILES) J'ai rien, un tableau vide...
Teppic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 14h16   #6
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
C'est quoi CCGetParam ?
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 15h15   #7
Invité de passage
 
Inscription : mars 2004
Messages : 28
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 28
Points : 3
Points : 3
C'est une fonction qui récupère un paramètre dans l'url, en l'occurence le chemin absolu du fichier choisi par l'utilisateur.
Teppic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2007, 16h41   #8
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
On peut avoir le code de cette fonction ?
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h28.


 
 
 
 
Partenaires

Hébergement Web