Problème avec code d'upload

cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010 - 25 déc. 2008 à 03:45
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010 - 26 déc. 2008 à 22:40
Bonjour je crée présentement un site avec une possibilté de partager des fichiers mais voilà je n'arrive pas à faire fonctionné un des codes: upload.php

J'ai télécharger la source ici:    http://www.phpcs.com/code.aspx?ID=33863 (je le poste ici car je n'ai aucune réponse ailleurs...)
J'ai déjà posté des demandes sous le nom de Koppa mais revoici mon problème

Je rentre sur la page je choisi mon fichier dans le champ en question (avec le bouton parcourrir)

je clique OK et ce message d'erreur m'apparait:

voici le code en question (upload.php)
<hr />
<?php
session_start();

 if(!session_is_registered('user'))  header("location:err.htm");
 ?>
<html>
<head>
<title>Mettre un Fichiers Dans Le serveur</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"  src="menus/script.js"type="text/JavaScript"></script>
</head>


 

 

 

      ----

        <table border="0" cellpadding="0" cellspacing="0">
            ----

             , [partage_file.php partager]
              ces fichiers

          </center></td>';
         
                   
           
           
           
           
           
           
           
           
           
           
}
          ?>
      </tr>
    </table>
    NB: Attention Maximum 2 Mo

 

</html>
<?php
session_start();

 if(!session_is_registered('user'))  header("location:err.htm");
 ?>
<html>
<head>
<title>Mettre un Fichiers Dans Le serveur</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"  src="menus/script.js"type="text/JavaScript"></script>
</head>


 

 

 

      ----

        <table border="0" cellpadding="0" cellspacing="0">
            ----

             , [partage_file.php partager]
              ces fichiers

          </center></td>';
         
                   
           
           
           
           
           
           
           
           
           
           
}
          ?>
      </tr>
    </table>
    NB: Attention Maximum 2 Mo

 

</html>
<hr />

En espérant qu'on puisse m'aide si tel est le cas je remercie cette personne d'avance par contre je par bientôt du 24 ou 30 mais Merci quand même !




Koppa

10 réponses

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
25 déc. 2008 à 21:38
Salut,

Je n'ai que 2 secondes, je n'ai donc pas eu le temps de regarder le code.
Tu devrais vérifier que les différents chemins relatifs à la réception et au déplacement du fichier sont corrects. Vérifie également les droits.

Cordialement,

Kohntark -
0
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 03:26
Je ne suis pas trop sur comment faire ça avec mon hébergeur  (000webhost)...


Je prends d'autre propositions




Koppa
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
26 déc. 2008 à 11:34
Dis moi, c'est quoi qui te rebutes dans ma proposition ?

Tu as un problème dans les chemins de move_uploaded_file; la destination du fichier à copier ne doit pas utiliser le protocole http mais être un chemin "absolu" valide sur l'arborescence du serveur.

Essais peut être un truc dans le genre :
/home/a1322359/public_html/www/users/[session name]/[ton nom de fichier]

Mais le mieux est de regarder précisément l'arborescence et de te renseigner auprès de ton hébergeur.

Maintenant si tu ne daignes pas essayer les conseils que les gens te proposent, libre à toi, mais ce n'est pas prêt de fonctionner !

Kohntark -
0
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 17:55
Pardon mais je crois qu'on c'est mal compris...

Comme tu me disais de vérifier les accès et tout et tout et que je ne savais pas comment faire avec mon hébergeur je n'ai pas pu essayer c'est pourquoi je dit que je prenais d'autre idées en attendant de trouver comment vérifier tout ça...

Je vais essayer de changer la destination en espérant que ça marche. Merci beaucoup !

Koppa
0

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

Posez votre question
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 18:20
Euh... ça ne marche pas voici ce que j'ai fait
j'ai ce code(/home/a1322359/public_html/www/users/'.$_SESSION['user']) et j'ai aussi créer un sous-répertoire qui correspond au nom d'utilisateur (Ocyloth dans ce cas ci) dans le répertoire Users voici l'erreur obtenu:
<hr />
PHP Error Message

Warning: move_uploaded_file(/home/a1322359/public_html/www/users/Ocyloth/upload.php) [function.move-uploaded-file]: failed to open stream: Permission denied in /home/a1322359/public_html/www/upload.php on line 132

Free Web Hosting

PHP Error Message

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phppn6lQh' to '/home/a1322359/public_html/www/users/Ocyloth/upload.php' in /home/a1322359/public_html/www/upload.php on line 132

Free Web Hosting
Impossible de copié

<hr />
Et revoici mon code complet:

<hr /><?php
session_start();

 if(!session_is_registered('user'))  header("location:err.htm");
 ?>
<html>
<head>
<title>Mettre un Fichiers Dans Le serveur</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"  src="menus/script.js"type="text/JavaScript"></script>
</head>


 

 

 

      ----

        <table border="0" cellpadding="0" cellspacing="0">
            ----

             , [partage_file.php partager]
              ces fichiers

          </center></td>';
   
     
   
   
   
   
   
   
   
   
   
   
}
    ?>
      </tr>
    </table>
    NB: Attention Maximum 2 Mo

 

</html>

<hr />
Merci d'avance... je vais essayer d'autre chose au cours de la soirée

Koppa
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
26 déc. 2008 à 18:37
Salut,

Je préfère ce message d'erreur, là au moins le chemin semble exister, il s'agit maintenant d'un problème de droits.

Deux choses :
- Ce n'est pas "/home/a1322359/public_html/www/users/Ocyloth/upload.php" qu'il faut déplacer, mais le fichier qui a été uploadé.

- Vérifie que le répertoire "/home/a1322359/public_html/www/users/" est en chmod 777, c'est à dire qu'il est en consultation / lecture / écriture. Selon le client ftp que tu as, fais un clique droit sur le répertoire, puis choisis "attributs", ou "propriétés" (ou un truc du genre) et donne l'accès en lecture / écriture.

Si ça ne fonctionne toujours pas c'est que le chemin n'est toujours pas bon. Vois avec ton hebergeur ou pose la question sur son forum, car le chemin dépend de l'hébergeur, et n'ayant pas de site chez eux je ne pourrai pas t'aider davantage.

Cordialement,

Kohntark -
0
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 20:01
Ok je vais essayer ça et pour ce qui est du upload j'ai uploadé ce fichier pour tester comme je ne suis pas sur mon ordinateur.

Merci

Koppa
0
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 20:13
Je te remercie énormément tout marche maintenant ! C'est donc résolu merci !
Si je peux faire quelque chose pour t'aider a mon tour dit le !

Koppa
0
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 22:35
Après l'upload le download... en effet le code qui permet le download ne marche pas lui non plus...

J'était incapable d'ouvrir un .jpg que je venais d'uploader grâce au code récemment fonctionnel... J'ai essayer d'uploader un fichier texte et en l'ouvrant j'ai vu cet erreur à la place du texte:





<hr />
PHP Error Message




Warning: filesize() [function.filesize]: stat failed for /home/a1322359/public_html/www/users/Ocyloth\upload.php in /home/a1322359/public_html/www/download.php on line 44


Free Web Hosting


 




PHP Error Message




Warning: readfile(/home/a1322359/public_html/www/users/Ocyloth\upload.php) [function.readfile]: failed to open stream: No such file or directory in /home/a1322359/public_html/www/download.php on line 46


Free Web Hosting





<hr />
Voici le code en question:





<hr />

<?php
session_start();



 if(!session_is_registered('user'))



  header("location:err.htm");
$connexion=mysql_connect("mysql1.000webhost.com","a1322359_private","newton222");
mysql_select_db("a1322359_private");





function sec_verif($file)
 {
 if (!isset($_GET['own']))
 {
 $req='select * from partage where id_file="'.$file.'" and login="'.$_SESSION['user'].'"';
 mysql_query($req)or die(mysql_error());
}
else if ($_GET['own']=="yes")



{



 $req='select * from files where id_file="'.$file.'" and login="'.$_SESSION['user'].'"';
 mysql_query($req)or die(mysql_error());



}
 
 
 
  if (!mysql_affected_rows()) header("location:err.htm");
 
 
 }
 
 
 




 



sec_verif($_GET['idf']);
 
 $file_path ='/home/a1322359/public_html/www/users/'.$_GET['path'].'\\'.$_GET['f_name'];



header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize($file_path));
header("Content-Disposition: attachment; filename=".basename($file_path));
readfile($file_path);





?>



<hr />

Et ça peut venir uniquement du code de download car lorsque je vais voir dans mon serveur je vois les fichiers totalement intact alors si quelqu'un peut bien m'aider ce serait bien apprécié

Et c'est le dernier problème je vous jure le reste est UP and READY

Merci
Koppa
0
cs_Koppa Messages postés 30 Date d'inscription mardi 29 mai 2007 Statut Membre Dernière intervention 24 janvier 2010
26 déc. 2008 à 22:40
Problème résolu !!
Pour les interesser remplacer:
'/home/a1322359/public_html/www/users/'.$_GET['path'].'\\'.$_GET['f_name'];

par:

'/home/a1322359/public_html/www/users/'.$_GET['path'].'/'
.$_GET['f_name'];

Merci moi !

Koppa
0
Rejoignez-nous