Php upload
labenjou
-
ScroudaF Messages postés 131 Statut Membre -
ScroudaF Messages postés 131 Statut Membre -
Bonjour,
voila j'ai une question concernant les script d'upload en php.
En fait pour un projet scolaire je fais un site de vente aux encheres, donc j'aimerai associer a mes objets des photos.
J'ai compris les differents scripts d'upload que j'ai pu lire seulement le mien ne fonctionne pas.
Ce lors de l'utilisation de la fonction "move_uploaded_file".
Je me demandais si le repertoire de destination etait un repertoire precis ou bien si je pouvais mettre n'importe quel repertoire que j'aurai cree au prealable.
Merci.
voila j'ai une question concernant les script d'upload en php.
En fait pour un projet scolaire je fais un site de vente aux encheres, donc j'aimerai associer a mes objets des photos.
J'ai compris les differents scripts d'upload que j'ai pu lire seulement le mien ne fonctionne pas.
Ce lors de l'utilisation de la fonction "move_uploaded_file".
Je me demandais si le repertoire de destination etait un repertoire precis ou bien si je pouvais mettre n'importe quel repertoire que j'aurai cree au prealable.
Merci.
A voir également:
- Php upload
- Upload video youtube - Télécharger - Diffusion
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Fourtoutici upload - Forum Imprimante
- Gofile upload - Télécharger - Téléchargement & Transfert
3 réponses
Donc,
move_uploaded_file($source,$cible)
$source = le dossier temporaire
$cible = ce que tu veux, sur le serveur.
Il y a quelque chose qui ne fonctionne pas? n'oublie pas l'enctype dans la balise <form ...>
On peut avoir ton script? :)
move_uploaded_file($source,$cible)
$source = le dossier temporaire
$cible = ce que tu veux, sur le serveur.
Il y a quelque chose qui ne fonctionne pas? n'oublie pas l'enctype dans la balise <form ...>
On peut avoir ton script? :)
C'est l'addresse du dossier qui ne va pas :
$dossier = 'http://127.0.0.1/projet/images/';
Cette addresse doit faire référence à l'endroit d'où est exécuté le traitement du formulaire.
Par exemple, si le traitement du formulaire se fait dans le fichier http://127.0.0.1/projet/images/traitement.php
alors ton script va copier dans http://127.0.0.1/projet/images/http://127.0.0.1/projet/images/
En bref :
$dossier = '.';
$dossier = 'http://127.0.0.1/projet/images/';
Cette addresse doit faire référence à l'endroit d'où est exécuté le traitement du formulaire.
Par exemple, si le traitement du formulaire se fait dans le fichier http://127.0.0.1/projet/images/traitement.php
alors ton script va copier dans http://127.0.0.1/projet/images/http://127.0.0.1/projet/images/
En bref :
$dossier = '.';
<?php
session_start();
?>
<form method="post" action="../traitement/traiternouvellevente.php" enctype="multipart/form-data">
<p>Titre de la vente :<br /> <input type="text" name="nom" /></p>
<p>Categorie : <br />
<select name="categorie">
<option value="art et culture">Art et Culture</option>
<option value="automobiles">Automobiles</option>
<option value="beaute">Beaute</option>
<option value="bijoux">Bijoux</option>
<option value="image et son">Image et Son</option>
<option value="immobilier">Immobilier</option>
<option value="informatique">Informatique</option>
<option value="jouet">Jouets</option>
<option value="jeux video">Jeux video</option>
<option value="immobilier">Immobilier</option>
<option value="livres">Livres</option>
<option value="technologie">Technologie</option>
<option value="vetements">Vetements</option>
<option value="autre">Autre</option>
</select></p>
<p>Prix de depart :<br /> <input type="text" name="prixdpt" /></p>
<p>Prix immediat :<br /> <input type="text" name="prixim" /></p>
<p>Frais de livraison :<br /> <input type="text" name="prixlivraison" /></p>
<p>Delais de livraison :<br /> <input type="text" name="delaislivraison" /></p>
<p>description :<br /><textarea name="description" cols="50" rows="5" /></textarea></p>
<p>Etat :<br />
<select name="etat">
<option value="neuf">Neuf</option>
<option value="bon Etat">bon etat</option>
<option value="occasion">occasion</option>
<option value="deteriore">Deteriore</option>
</select></p>
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
<p>Photo :<br> <input name="avatar" type="file"></p>
<input type="submit" value="Envoyer" />
<input type="reset" value="Reinitialiser" />
</form>
Et voici le code ou je traite mon formulaire:
<?php
session_start();
extract($_POST);
mysql_connect("localhost","root","");
mysql_select_db("projet");
$pseudovendeur=$_SESSION['login'];
$dossier = 'http://127.0.0.1/projet/images/';
$fichier = basename($_FILES['avatar']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['avatar']['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['avatar']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)){
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi){
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)){
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier))
echo 'Upload effectué avec succès !';
if(!move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier))
echo 'Echec de l\'upload !';
else
echo $erreur;
$query="insert into objet values('','$nom','$description','$etat','$prixdpt','$prixim','$prixlivraison','$delaislivraison','$fichier','$pseudovendeur');";
mysql_query($query) or die("marche po");
$numobjet=mysql_insert_id();
$query="insert into categorie values('
','$categorie','$numobjet');";
mysql_query($query) or die("marche po");
echo "Il y a ".$numobjet."jeux vidéos en vente !";
$_SESSION['newvente']=1;
echo '<img src="'.$fichier.'">';
// header("location:http://127.0.0.1/projet/vendre/mes ventes.php");
?>
Desolé ca fait long : $