Page 1 sur 1

télécharger un fichier

Posté : 26 janv. 2007, 18:12
par cmoi
Bonjour,

j'ai ce code qui s'applique à un champ de formulaire pour télécharger une image :
<?php
		$rep_destination = $_SERVER["DOCUMENT_ROOT"]."/http://europoleformations.free.fr/Portail/images/";
		if (isset($_FILES["photo"])) {
			if (is_uploaded_file($_FILES["photo"]["tmp_name"])) {
			if (strtolower(substr($_FILES["photo"]["name"], -4))==".jpg") {
			$destination = $rep_destination."/"
				.$_FILES["photo"]["name"];
			move_uploaded_file($_FILES["photo"]["tmp_name"],
			$destination);		
			?>
	<?php
	} else {
	echo 'Mauvais type de fichier';
	}
	}
	}
	?>
Premier souci : l'adresse de destination ne fonctionne pas. Je pense avoir mal compris le principe.

2e question : comment accepter plusieurs types de fichiers ? Je ne sais pas comment rajouter .gif après .jpg

Merci pour vos éclaircissements.

Posté : 26 janv. 2007, 18:40
par rakizm
salut :)
d'abord pour le rep destination cela dépend de où tu executes ton script php
ensuite pour rajouter d'autres types de fichiers c'est très simple

Code : Tout sélectionner

if ((strtolower(substr($_FILES["photo"]["name"], -4))==".jpg")|| (strtolower(substr($_FILES["photo"]["name"], -4))==".gif")|| (strtolower(substr($_FILES["photo"]["name"], -4))==".pdf") ||(strtolower(substr($_FILES["photo"]["name"], -4))==".txt"))
ceci et un exemple
mais si tu veux tous les types de fichier ne met pas le test sur le type de fichier et ton script les acceptera tous

Posté : 26 janv. 2007, 18:50
par Ajoloca
Bonsoir,

Ton premier souci viens de là
$rep_destination = $_SERVER["DOCUMENT_ROOT"]."/http://europoleformations.free.fr/Portail/images/";
Fais un echo de $rep_destination et tu comprendras vite.

Posté : 26 janv. 2007, 19:05
par cmoi
Merci à Rakizm qui me solutionne la 2e partie de mon problème.

Suivant le conseil de Ajoloca j'ai fait
echo '$rep_destination';
et j'ai ça à l'écran: $rep_destination.
Je dois en conclure quoi ?

Posté : 26 janv. 2007, 19:23
par Ajoloca
Re,

Tu ne dois pas mettre ta variable entre apostrophes.
fais ceci
$rep_destination = $_SERVER["DOCUMENT_ROOT"]."/http://europoleformations.free.fr/Portail/images/";
echo $rep_destination;
exit();
        if (isset($_FILES["photo"])) { 

Posté : 26 janv. 2007, 19:54
par cmoi
j'ai compris, ça fonctionne ! Merci.

Question complémentaire.
quand on appuie sur Envoyer, le formulaire se recharge. Est-il possible d'avoir un lien vers une autre page ?

Posté : 26 janv. 2007, 20:00
par Truc
Modération :
cmoi, si tu as une autre question ouvre un nouveau sujet,
cela te permettra d'avoir plus de réponses.

En plus, tu pourras mettre [Résolu] dès que ton problème évoqué ici sera réglé.

Merci de prendre le temps de lire les règlements.

Posté : 26 janv. 2007, 20:06
par cmoi
ok je m'exécute.