Aidez moi a finir un script d'upload par HTTP !! [PHP] - Programmation
Marsh Posté le 28-01-2002 à 22:50:42
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 '
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]
Marsh Posté le 28-01-2002 à 22:54:50
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
Marsh Posté le 28-01-2002 à 22:57:48
yes ca marche !!!!!! mais que avec les ptit fichiers
c koi comme valeur ki fo modifier pour pouvoir envoyer des gros fichiers ???????
Marsh Posté le 28-01-2002 à 22:59:42
Vinz416 : je croyais que mon script t'interessait pas
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]
Marsh Posté le 28-01-2002 à 23:01:19
ben si kil minteresse ton script en fait !!!!! jtai meme envoyer un private
Marsh Posté le 28-01-2002 à 23:02:51
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
Marsh Posté le 28-01-2002 à 23:04:02
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 !
Marsh Posté le 28-01-2002 à 23:04:20
oké je cherche ! ptain jsuis trop content la si ca marche pour un fichier de 50 mega
Marsh Posté le 28-01-2002 à 23:06:51
Heu, j'ai dis une connerie !
Laisse file_name !
Mais le champ HIDDEN, je vois pas à quoi il sert ?
Marsh Posté le 28-01-2002 à 23:08:32
yaisse c bon ca marche !!!!!!!!!!!!
putain jvous remercie tous les gars
Marsh Posté le 28-01-2002 à 23:13:32
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é
Marsh Posté le 29-01-2002 à 04:05:00
Vinz416 a écrit a écrit : ben si kil minteresse ton script en fait !!!!! jtai meme envoyer un private |
un private ???
tu veux dire primate
Marsh Posté le 30-01-2002 à 16:51:42
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+
Marsh Posté le 30-01-2002 à 18:24:18
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+
Marsh Posté le 23-06-2002 à 14:44:54
Moi aussi il m'interess ce script (heureusement il y a pas de copyright )
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 !!
Marsh Posté le 28-01-2002 à 20:36:35
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
----------------
<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]