Transfère de fichier.

Fermé
AQW123 Messages postés 295 Date d'inscription dimanche 6 mars 2011 Statut Membre Dernière intervention 15 décembre 2012 - Modifié par AQW123 le 29/12/2011 à 17:59
AQW123 Messages postés 295 Date d'inscription dimanche 6 mars 2011 Statut Membre Dernière intervention 15 décembre 2012 - 30 déc. 2011 à 09:16
Bonjour, en ce moment j'apprends le PHP, mais quelques chose me bloque, c'est ce bout de code, j'ai compris que l'on peut faire un transfère de fichier depuis un site web vers un fichier....
Enfaite j'ai pas du tout compris comment marche les transfère de fichier (j'ai lus trois fois le chapitre basé sur ça mais je ne comprend pas ) :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
"http://www.w3.org/TR/html4/strict.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<title>Transfert de fichier</title> 
</head> 
<body> 
<form action="form6.7.php" method="post" enctype="multipart/form-data" > 
<input type="hidden" name="MAX_FILE_SIZE" value="500" /> 
<fieldset> 
<legend><b>Transfert de fichier</b></legend> 
<table> 
<tbody> 
<tr> 
<th>Fichier</th> 
<td> <input type="file" name="fich" accept="image/jpg" size="50"/></td> 
</tr> 
<tr> 
<th>Clic!</th> 
<td> <input type="submit" value="Envoi" /></td> 
</tr> 
</tbody> 
</table> 
</fieldset> 
</form> 
<!--Code PHP --> 
<?php 
if(isset($_FILES['fich'])) 
{ 
echo "Taille maximale autorisée :",$_POST["MAX_FILE_SIZE"]," octets<hr / >"; 
echo "<b>Clés et valeurs du tableau \$_FILES </b><br />"; 
foreach($_FILES["fich"] as $cle => $valeur) 
{ 
echo "clé : $cle valeur : $valeur <br />"; 
} 
//Enregistrement et renommage du fichier 
$result=move_uploaded_file($_FILES["fich"]["tmp_name"],"imagephp.gif"); 
if($result==TRUE) 
{echo "<hr /><big>Le transfert est réalisé !</big>";} 
else 
{echo "<hr /> Erreur de transfert n°",$_FILES["fich"]["error"];} 
} 
?> 
</body> 
</html> 





A voir également:

4 réponses

AQW123 Messages postés 295 Date d'inscription dimanche 6 mars 2011 Statut Membre Dernière intervention 15 décembre 2012 2
29 déc. 2011 à 19:57
Est-ce que quelqu'un pet-il m'aider ?
0
AQW123 Messages postés 295 Date d'inscription dimanche 6 mars 2011 Statut Membre Dernière intervention 15 décembre 2012 2
29 déc. 2011 à 22:06
Quelqu'un peut-il m'aider ?
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 973
29 déc. 2011 à 23:45
c'est tout simplement la fonction move_uploaded_file qui permet de transferer un fichier :

move_uploaded_file($_FILES["fich"]["tmp_name"],"imagephp.gif");

$_FILES["fich"] : c'est ton fichier choisi au depart.
["tmp_name"] : c'est le nom temporaire du fichier stocké (ca tu t' en moques un peu mais c'est obligatoire)
"imagephp.gif" : c'est le nom de ton fichier une fois transferé.

Voila, bon courage.
0
AQW123 Messages postés 295 Date d'inscription dimanche 6 mars 2011 Statut Membre Dernière intervention 15 décembre 2012 2
30 déc. 2011 à 00:08
Enfin quelqu'un à entendu ma voix et qui m'aide, MERCI BEAUCOUP !

J'ai deux ou trois questions :
Pourquoi j'ai sa dans le code : action="form6.7.php"

J'ai tous compris mais je ne comprend pas le "$_FILES["fich"] : c'est ton fichier choisi au depart. "
Si moi je créer un fichier fich et je l'envoie sur mon serveur à l'aide FillZilla, quand quelqu'un va effectuer un transfère de fichier depuis mon site, je vais retrouver cette fichier dans cette dossier appelé fich ?

Et peut-on rajouter d'autres champs ici comme message ... ?

Je demande tous sa car je voudrez rien louper dans le php, mieux apprendre tous en une fois que de revenir sur la même chose toujours...
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 973
Modifié par graffx le 30/12/2011 à 02:17
Non du tout, ton script commence par un formulaire pour envoyer ton fichier.

je vais faire court et trés simple pour que tu comprennes:

<form action="page_de_traitement.php" enctype="multipart/form-data">
<input name="fich" type="file" />
<input type="submit" value="envoyer" />
</form>


J' ai peut-etre fais quelque fautes car j' ai tapé vite fait.

ton form6.7.php la c'est la page de traitement du formulaire ou tu as piqué le script (hum). C'est a dire que lorsque tu vas valider ton formulaire, les infos vont etre traitées sur la page form6.7.php, mais tu peux l' appeler comme tu veux.

Ensuite enctype="multipart/form-data est obligatoire dans un formulaire si on veut envoyer des fichiers et pas seulement des infos.

<input name="fich" type="file" />

tu remarque ton $_FILES['fich'] vient de la, c'est le nom du champs de ton fichier choisir sur ton pc avant le traitement.

Voila, mais la il n' y a rien de compliqué, je t' ai maché le travail, je ne suis pas d'accord sur ta derniere phrases car la ce ne sont que des bases en php, on a tous besoin d' aller voir le manuel php de temps en temps, et je suis loin d' avoir un niveau de fou, meme de super codeurs comme avion-f16 je suis sur vont voir le manuel de temps en temps (tu me contrediras avion-f16 si je me trompe).

Je te conseille le site suivant pour apprendre le php:

https://openclassrooms.com/fr/ ,tout y est expliqué pour un gamin de 10 ans, on est obligé de comprendre. Leurs tutos sont un peu obsolètes mais pour les bases c'est trés bien.

Plus precisement ici :

https://openclassrooms.com/fr/courses


Merci de cliquer sur "Marquer comme resolu" si votre problème est reglé !
0
AQW123 Messages postés 295 Date d'inscription dimanche 6 mars 2011 Statut Membre Dernière intervention 15 décembre 2012 2
30 déc. 2011 à 09:16
J'ai du mal encore à comprendre, là il faut que je créer quoi comme dossier ?
0