Upload images
bibal123
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
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
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
A voir également:
- Upload images
- Youtube upload - Télécharger - Diffusion
- Des images - Guide
- Images enregistrées - Forum Gravure
- Extraire images pdf - Guide
- Les images enregistrées n'apparaissent plus - Forum Bureautique
1 réponse
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...
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...