Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2818 connectés 

  FORUM HardWare.fr
  Programmation

  [PHP] Aidez moi a finir un script d'upload par HTTP !!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Aidez moi a finir un script d'upload par HTTP !!

n°94266
Vinz416
Posté le 28-01-2002 à 20:36:35  profilanswer
 

Voila c un script que jai trouver ds un post du forum qui a ete fait par potiron.
mais ca merde et jen aurais grave besoin pour demain dun script tout fait. je connais pas grand chose en php et je c pas comment réparer/finir le truc.
voila le source, jespère vraiment ke qq1 prendra le tps de m'aider :)
 
 :hello:  
----------------
 
<html>  
<head>  
 
<!-- #BeginEditable "script" -->  
<SCRIPT LANGUAGE="JavaScript">  
<!--  
function nom(){  
document.formu.fichier.value=document.formu.file_name.value;  
}  
//-->  
</SCRIPT>  
 
<!-- #EndEditable -->  
</head>  
<body bgcolor="#0099CC">  
 
<table width="100%" border="3  
" height="100%" align="center" bordercolor="#FFFFFF">  
 <tr>  
   <td><!-- #BeginEditable "central" -->  
     <center>  
       <font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="4">Test  
       : Upload de fichier sur le serveur par HTTP </font>  
     </center><br><br><br><br>  
     <form method="post" action="upload.php" ENCTYPE="multipart/form-data" name="formu">  
       <center>  
         <font face="Arial, Helvetica, sans-serif" color="#FFFFFF" size="3"><u>Choississez  
         le fichier a envoyer :</u></font> <br>  
         <br>  
         <input type="file" name="file_name" enctype="multipart/form-data">  
         <br><br>  
         <br>  
         <INPUT TYPE="hidden" NAME="fichier">  
         <input type="submit" value="Envoyer" onClick="nom()">  
       </center>  
     </form>  
     <!-- #EndEditable --> </td>  
 </tr>  
</table>  
</body>  
<!-- #EndTemplate --></html>  
 
 
----------------
 
<html>  
<head>  
 
</head>  
<body bgcolor="#0099CC">  
 
<table width="100%" border="3  
" height="100%" align="center" bordercolor="#FFFFFF">  
 <tr>  
   <td><!-- #BeginEditable "central" -->  
     <center>  
       <font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">  
         <?  
 $fon='<font face="arial" size="4" color="red">';$fon2='</font>';  
 $fona='<font face="arial" size="4" color="#00CC33">';$fona2='</font>';  
 $fonb='<font face="arial" size="4" color="000000">';$fonb2='</font>�
39;;  
   
 $temp=explode('\\',stripslashes($fichier)); <-- ligne 19
 $nom_fichier=$temp[count($temp)-1];  
 $t_serveur=@diskfreespace("/" )/1000000;  
 
 
if(@file_exists($nom_fichier)){  
  echo $fon.'le fichier '.$fon2.$fonb.$nom_fichier.$fonb2.$fon.' existe deja sur le serveur'.$fon2;  <-- ligne 25
  exit();  
}  
if (!$file_name){  
echo $fon.'Spécifier un fichier à envoyer'.$fon2;  
exit();  
}  
if(!(@diskfreespace("/" ))-filesize($fichier)>10000){  
  echo $fon."Il y a plus assez d'espace sur le serveur".$fon2;  
  exit();  
}  
if(copy($file_name , $temp[count($temp)-1])){  
echo $fona.'le transfert de '.$fona2.$fonb.$nom_fichier.$fonb2.$fona.' est reussi'.$fona2;  
}else{  
   echo $fon.'y a eu un probleme lors du transfert de '.$fon2.$fonb.$nom_fichier.$fonb2;  
}  
?>  
 
   
  </font>  
     </center>  
     <!-- #EndEditable --> </td>  
 </tr>  
</table>  
</body>  
<!-- #EndTemplate --></html>  
 
 
 
 
----------
 
 
les erreurs que j'ai sont :
 
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in c:\program files\easyphp\www\vinz416\upload.php on line 19
 
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in c:\program files\easyphp\www\vinz416\upload.php on line 19
 
Parse error: parse error in c:\program files\easyphp\www\vinz416\upload.php on line 25

 

[edtdd]--Message édité par Vinz416--[/edtdd]

mood
Publicité
Posté le 28-01-2002 à 20:36:35  profilanswer
 

n°94270
Je@nb
Kindly give dime
Posté le 28-01-2002 à 20:43:13  profilanswer
 

précise les n° de lignes car sans chui un peu pomé  :D

n°94275
Vinz416
Posté le 28-01-2002 à 21:00:19  profilanswer
 

cf au dessus :)

n°94293
Vinz416
Posté le 28-01-2002 à 21:45:22  profilanswer
 

:bounce:  :(

n°94310
Mara's dad
Yes I can !
Posté le 28-01-2002 à 22:50:42  profilanswer
 

T'as un PB avec $fonb2 :
 
$fonb='<font face="arial" size="4" color="000000">';$fonb2='</font>�
39;;  
 
$temp=explode('\\',stripslashes($fichier)); <-- ligne 19
 
---------------------
Correction :
---------------------
$fonb='<font face="arial" size="4" color="000000">';
$fonb2='</font>';  
 
$temp=explode('\\',stripslashes($fichier)); <-- ligne 19
 
---------------------
le & #039;, c'est une '  :D  
Ta chaîne $fonb2 n'était pas fermée, donc il continuait jusqu'à :
$temp=explode(' <-
et c'est donc le \\ qu'il ne comprends pas -> les deux premier messages d'erreur.
 
Ensuite le message pour la ligne 25, c'est juste à cause de $fonb2
 
A+

 

[edtdd]--Message édité par Mara's dad--[/edtdd]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°94312
Vinz416
Posté le 28-01-2002 à 22:54:50  profilanswer
 

ca a l'air mieu mais ya un autre bleme !!
 
Warning: Unable to open 'none' for reading: No such file or directory in c:\program files\easyphp\www\vinz416\upload.php on line 35
y a eu un probleme lors du transfert de american pie soundtracks - American Pie 2 14 Lucia I Will.mp3
 
qd jai valider et ke jarrive a la page upload.php c ca en resultat :(

n°94313
Vinz416
Posté le 28-01-2002 à 22:57:48  profilanswer
 

yes ca marche !!!!!! mais que avec les ptit fichiers :(
c koi comme valeur ki fo modifier pour pouvoir envoyer des gros fichiers ???????

n°94315
potiron
...
Posté le 28-01-2002 à 22:59:42  profilanswer
 

Vinz416 : je croyais que mon script t'interessait pas  :heink:  
 
le probleme est la :$fonb2='</font>'; -> d'ailleurs je comprends pas pourquoi j'ai ca d'afficher a la place d'un ' ...    
 
tu peux virer tous les $fon.. , et faire ca + propre, il servent juste a mettre en forme le texte a afficher .
 
autre chose, remplace :
temp=explode('\\',stripslas
 
hes($fichier));
$nom_fichier=$temp[count($temp)-1];  

par ca :
$nom_fichier=basename(stripslashes($fichier)); -> je connaissais pas la fonction basename a cet epoque, c'etait un de mes tout 1er script.
tu dois aussi remplacer les  
pareil, tu peux aussi virer : $temp[count($temp)-1] par $nom_fichier ensuite .
 
 
if(!(@diskfreespace("/" ))-filesize($fichier)>10000){  
 echo $fon."Il y a plus assez d'espace sur le serveur".$fon2;  
 exit();  
}  
-> c'est pas le genre de fonction que tu peux utiliser chez un hebergeur gratuit ...
 
--------
 
vire les lignes que j'ai indiqué, ca reglera le probleme sauf si l'hebergeur a bloqué partiellement copy.
quel limite ?

 

[edtdd]--Message édité par potiron--[/edtdd]

n°94317
Vinz416
Posté le 28-01-2002 à 23:01:19  profilanswer
 

ben si kil minteresse ton script en fait !!!!! jtai meme envoyer un private ;)

n°94318
Je@nb
Kindly give dime
Posté le 28-01-2002 à 23:02:51  profilanswer
 

Vinz416 a écrit a écrit :

ca a l'air mieu mais ya un autre bleme !!
 
Warning: Unable to open 'none' for reading: No such file or directory in c:\program files\easyphp\www\vinz416\upload.php on line 35
y a eu un probleme lors du transfert de american pie soundtracks - American Pie 2 14 Lucia I Will.mp3
 
qd jai valider et ke jarrive a la page upload.php c ca en resultat :(  




 
t'en fais pas t limité par ton hébergeur. en général c 2Mo maxi.
Si c sur ton serveur, regarde dans php.ini ou httpd.conf Upload Max Size

mood
Publicité
Posté le 28-01-2002 à 23:02:51  profilanswer
 

n°94319
Mara's dad
Yes I can !
Posté le 28-01-2002 à 23:04:02  profilanswer
 

Dans ton formulaire, tu as çà :
<input type="file" name="file_name" enctype="multipart/form-data">  
<br><br>  
<br>  
<INPUT TYPE="hidden" NAME="fichier">  
 
Dans ton script, tu utilise la variable $fichier qui correspond donc au champ HIDDEN.
1- Ce champ ne sert à RIEN !
2- Dans ton script, c'est le champ TYPE="FILE" quy est important.
 
Modifie ton formulaire comme çà :
<input type="file" name="fichier" enctype="multipart/form-data">  
 
Et enlève le champ HIDDEN !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°94320
Vinz416
Posté le 28-01-2002 à 23:04:20  profilanswer
 

oké je cherche ! ptain jsuis trop content la si ca marche pour un fichier de 50 mega :bounce:

n°94323
Mara's dad
Yes I can !
Posté le 28-01-2002 à 23:06:51  profilanswer
 

Heu, j'ai dis une connerie !
 
Laisse file_name !
 
Mais le champ HIDDEN, je vois pas à quoi il sert ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°94324
Je@nb
Kindly give dime
Posté le 28-01-2002 à 23:07:48  profilanswer
 

ça marchera pas je te dis.

n°94325
Vinz416
Posté le 28-01-2002 à 23:08:32  profilanswer
 

yaisse c bon ca marche !!!!!!!!!!!!
putain jvous remercie tous les gars :D
 :jap:  :hello:

n°94328
Vinz416
Posté le 28-01-2002 à 23:13:32  profilanswer
 

euh ... jai mis la limite a 200M et ca marche pour des fichier de lordre de 5 meg ~
mais pour un fichier de 50 mega ca foiré :( jai une page Action annulé :cry:

n°94336
Je@nb
Kindly give dime
Posté le 28-01-2002 à 23:27:40  profilanswer
 

met la variable POST MAX SIZE à la veleur que tu veux

n°94371
potiron
...
Posté le 29-01-2002 à 04:05:00  profilanswer
 

Vinz416 a écrit a écrit :

ben si kil minteresse ton script en fait !!!!! jtai meme envoyer un private ;)  




 
un private ???
tu veux dire primate  :??:  :D

n°94998
SquiiiD
be cool !
Posté le 30-01-2002 à 16:51:42  profilanswer
 

Bon ben snif alors
 
j'ai essayer ce script et chez moi ca dis ca :  
 
Warning: Unable to create 'etaussi.jpg': Permission denied in /home6/altitud1/am13229/html/chat/upload.php3 on line 36
y a eu un probleme lors du transfert de image.jpg

 
pourtant je suis sur un hebergeur payant
a+

n°95011
potiron
...
Posté le 30-01-2002 à 17:24:00  profilanswer
 

ca vient du CHMOD -> modifie les autorisations du rep

n°95044
SquiiiD
be cool !
Posté le 30-01-2002 à 18:24:18  profilanswer
 

merci de ta reponse potiron !
mais je c pas comment faire pour le chmod,...
je c meme pas dans kel pays c vis cet animal la !!! lol
sorry chui debutant :(
a+

n°95048
SquiiiD
be cool !
Posté le 30-01-2002 à 18:31:50  profilanswer
 

vous prenez pas la tete jai trouver tt seul merci :)

n°164061
camarchepo​a
m'enfin !
Posté le 23-06-2002 à 14:44:54  profilanswer
 

:hello:  
 
Moi aussi il m'interess ce script (heureusement il y a pas de copyright  :D )
mais g un pb .... qd je clic sur "envoyer", il m'ecrit sur la page :
 
10000){ echo "Il y a plus assez d'espace sur le serveur". exit(); } if(copy($file_name , $nom_fichier)){ echo 'le transfert de '.$nom_fichier.' est reussi'. }else{ echo 'y a eu un probleme lors du transfert de '.$nom_fichier. } ?>  
 
je sais pas pq .... une chaine mal terminée ?
 
 
qd je vire le test pour la place dispo :
 
if(!(@diskfreespace("/" ))-filesize($fichier)>10000){  
 echo "Il y a plus assez d'espace sur le serveur".
 exit();  
}  
ca a l'air de fonctionner : lapage est vide (c normal hein ? )
 
 
par contre le fichier a été envoyé ou  :??:  :??:  
 
oui je sais je sais je suis un newbie du php ......
 
 
alors si vous pouvez m'expliquer ce qu'il faut faire pour dire ou on stocke le fichier et pq je peut pas faire le test de place dispo ca serrait super cool !!
 :jap:


---------------
Ca marche pas sauf des fois ........
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [PHP] Aidez moi a finir un script d'upload par HTTP !!

 

Sujets relatifs
script pour calculer le tps de generation d'une pageProbleme avec PHP/SQL
[PHP/SQL] Recupéé les champs d'une table avec php[Asp/Php] Avantage du php par rapport a l asp
PHP / mysql : problème tout con ...Redirection en PHP
PHP + FLASH dynamique ?[PHP] cpheader , makelinkcode ... passent pas !
[C] - Programmation d'un Script 
Plus de sujets relatifs à : [PHP] Aidez moi a finir un script d'upload par HTTP !!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR