Upload images

bibal123 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,


je suis bleu en php j'aimerais enregister puis afficher une image de profil a partir d'un formulaire mon code est le suivant :

html:
<form action="register.php" method="post" enctype="multipart/form-data" >

<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
<input type="file" name='photo' id="photo" >



puis le php est :
$dossier = 'upload/';
$fichier = basename($_FILES['photo']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['photo']['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['photo']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$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)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['photo']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;


pour afficher
<img src="<?php echo $_SESSION['photo']; ?>" alt="" id="photo"/>



je ny arrive pas l'imache affiche est une petite icone brisee please help me!!!!!
ou si quelqu'un aurais un autre tuto sympas pour moi

1 réponse

Utilisateur anonyme
 
Salut

A aucun moment je n'ai lu de $_SESSION['photo'] dans ton code d'upload.
Au moment de l'envoi, quand les tests sont ok, tu peux déclarer une session ' photo', mais elle est absente.

Attention aussi, tu vérifies l'extension du fichier, mais pas le type du fichier. Là, si un malveillant upload un fichier php avec une extension jpg, il fait ce qu'il veut...
0