Envoyer un fichier sur l'hebergement Depuis le site internet
#1
Posté 21 décembre 2011 - 10:13
Bonjour à tous !
Je cherche à savoir comment je pourrais faire pour envoyer un fichier pdf ou doc chez mon hébergeur en étant sur une page internet.
Je vous explique :
J'ai un dossier précis ou je stock des fichiers chez mon hébergeur.
Depuis une page de mon site, je veux pouvoir aller sur mon disque dur, choisir un fichier, et l'envoyer dans ce dossier précis.
Je ne sais pas comment faire, et si il existe deja des chose la dessus.
Je vous demande donc votre aide.
Merci à vous, et bonne journée !
Je cherche à savoir comment je pourrais faire pour envoyer un fichier pdf ou doc chez mon hébergeur en étant sur une page internet.
Je vous explique :
J'ai un dossier précis ou je stock des fichiers chez mon hébergeur.
Depuis une page de mon site, je veux pouvoir aller sur mon disque dur, choisir un fichier, et l'envoyer dans ce dossier précis.
Je ne sais pas comment faire, et si il existe deja des chose la dessus.
Je vous demande donc votre aide.
Merci à vous, et bonne journée !
#2
Posté 21 décembre 2011 - 11:26
Salut,
Il fait d'abord faire un formulaire avec un champ de type "file" : c'est un champ qui permet à l'utilisateur de choisir un fichier sur son disque dur. Il faut aussi préciser l'enctype du formulaire. Ce qui donne :
Ensuite, dans truc.php, tu récupères le fichier avec $_FILES[] et tu l'enregistres avec move_uploaded_file() :
Avant l'enregistrement, il faut vérifier que le fichier envoyé est correct (bon format, taille maximale, droits de l'utilisateur, etc). Toutes les infos le concernant sont stockées dans $fichier. Par exemple pour connaître son nom : $fichier['name']. Son type mime : $fichier['type'], etc...
Et il faut bien sûr remplacer "destination/fichier.pdf" (dans l'exemple ci-dessus) par le chemin et le nom de ton choix.
Il fait d'abord faire un formulaire avec un champ de type "file" : c'est un champ qui permet à l'utilisateur de choisir un fichier sur son disque dur. Il faut aussi préciser l'enctype du formulaire. Ce qui donne :
<form action="truc.php" method="post" enctype="multipart/form-data"> <label for="fichier">Fichier : </label> <input type="file" id="fichier" name="fichier" /> <input type="submit" value="Envoyer" /> </form>
Ensuite, dans truc.php, tu récupères le fichier avec $_FILES[] et tu l'enregistres avec move_uploaded_file() :
$fichier = $_FILES['fichier']; // Vérifications / validation move_uploaded_file($fichier['tmp_name'], "destination/fichier.pdf");
Avant l'enregistrement, il faut vérifier que le fichier envoyé est correct (bon format, taille maximale, droits de l'utilisateur, etc). Toutes les infos le concernant sont stockées dans $fichier. Par exemple pour connaître son nom : $fichier['name']. Son type mime : $fichier['type'], etc...
Et il faut bien sûr remplacer "destination/fichier.pdf" (dans l'exemple ci-dessus) par le chemin et le nom de ton choix.
#4
Posté 21 décembre 2011 - 12:18
non, tu peut très bien mettre en destination
"destination/".$fichier['name']
Mon (très petit) site personnel
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
#10
Posté 21 décembre 2011 - 13:31
as-tu mis le dossier en CHMOD 777 ? car sinon, le deamon web ne saura rien créer dedans.
Au pire, tu peut faire une simple condition savoir si ça a fonctionné, du genre
si tu vois "pas ok", le déplacement du fichier a échoué.
Au pire, tu peut faire une simple condition savoir si ça a fonctionné, du genre
move_uploaded_file($fichier['tmp_name'], $fichier['name']) or die("pas ok");
echo "ok";
si tu vois "pas ok", le déplacement du fichier a échoué.
Mon (très petit) site personnel
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
#14
Posté 21 décembre 2011 - 17:30
peut tu copier entièrement le code ?
Mon (très petit) site personnel
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
#15
Posté 22 décembre 2011 - 09:10
Oui, bien sur le voilà :
1er fichier :
2eme fichier :
1er fichier :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Envoie de fichiers</title>
</head>
<body>
<table width="800" border="0">
<tr>
<td colspan="2" align="center">Pour envoyer un fichier, cliquer sur Parcourir, puis envoyer une fois le fichier selectionné.</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="2" align="center"><form action="envoie2.php" method="post" enctype="multipart/form-data">
<label for="fichier">Fichier : </label>
<input type="file" id="fichier" name"fichier" />
<input type="submit" value="Envoyer" />
</form></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
</body>
</html>
2eme fichier :
<p><a href="envoie.php">Retour</a></p>
<p> </p>
<?php
$fichier = $_FILES['fichier'];
// Vérifications / validation
move_uploaded_file($fichier['tmp_name'], $fichier['name']) or die("pas ok");
echo "ok";
?>
Ce message a été modifié par ZeDevil - 22 décembre 2011 - 15:44.
#18
Posté 22 décembre 2011 - 14:36
c'était une erreur d'Ernestine
Mon (très petit) site personnel
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
"Ce n'est pas parce que l'on ne sait pas, que l'on ne peut pas. L'on peut tout apprendre, avec de la motivation."
#19
Posté 22 décembre 2011 - 14:42
Oui, et j'avais édité mon message une heure ou deux après.
Cela dit, il ne faut jamais se contenter de copier-coller, il faut lire entièrement ce qu'on copie, et le comprendre, sinon, ça ne sert à rien... Un simple coup de validateur aurait permis de relever cette erreur, et aurait ainsi éviter ce long débug.
ZeDevil : la prochaine fois, merci d'utiliser les balises CODE et /CODE pour copier du code.
Cela dit, il ne faut jamais se contenter de copier-coller, il faut lire entièrement ce qu'on copie, et le comprendre, sinon, ça ne sert à rien... Un simple coup de validateur aurait permis de relever cette erreur, et aurait ainsi éviter ce long débug.
ZeDevil : la prochaine fois, merci d'utiliser les balises CODE et /CODE pour copier du code.
#20
Posté 22 décembre 2011 - 15:43
Oui, Ernestine, je m'en suis rendu compte après que j'aurais mettre dans les balises......
(J'ai corrigé mon erreur
)
J'ai lu et relu mais la 2eme partie pensant que c'était là d’où venait l'erreur mais en fin de compte, c'était dans la 1ere partie.
En tout cas, merci pour votre aide, comme à chaque fois que je viens, c'est toujours avec plaisir que je vous retrouve.
(J'ai corrigé mon erreur
J'ai lu et relu mais la 2eme partie pensant que c'était là d’où venait l'erreur mais en fin de compte, c'était dans la 1ere partie.
En tout cas, merci pour votre aide, comme à chaque fois que je viens, c'est toujours avec plaisir que je vous retrouve.
Ce message a été modifié par ZeDevil - 22 décembre 2011 - 15:45.
- ← Que faire des informations périmées ?
- (X)HTML et CSS
- Problème bordure différente selon style lié ou en ligne →




Haut













