Upload Fichier

Résolu
adama3636 Messages postés 69 Statut Membre -  
H0gS Messages postés 380 Statut Contributeur -
Bonjour,

j'ai un probleme pour uploader un image. d'apres moi ca devais marcher mais je ne sais pas qu'est ce qui bloque. voici le formualre et le scripte de traitement.

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////

<!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=iso-8859-1" />
<title>Document sans titre</title>
</head>

<body>
<form name="formulaire" action="controle_testform.php" method="post">
<table>
<tr>
<td >*Nom</td><td><input name="nom" id="nom" type="text" size="50" " /></td>
</tr>
<tr>
<td>*Prénom</td><td><input name="prenom" id="prenom" type="text" size="50" /></td>
</tr>
<tr>
<td>Photo de profil</td>
<td> <input type="file" name="avatar"></td><tr><td> <input type="submit" value="send" name="send" id="send" /></td></tr>
</tr></table>
</form>
</body>
</html>

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////

<?php
if(isset($_POST['send']))
{
function make_seed()
{
list($usec, $sec) = explode(' ', microtime());
return (float) $sec + ((float) $usec * 100000);
}

srand(make_seed());
$randval = rand();
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$name_file = $randval.$prenom.$nom ;

$taille_maxi = 1000000;
$fichier_name = basename($_FILES['avatar']['name']);
$taille = filesize($_FILES['avatar']['tmp_name']);
$infos_img = getimagesize($_FILES['avatar']['tmp_name']);
$extensions = array('.jpg','.jpeg','.gif','.png'); //definition des extensions acceptées
$extension = strrchr($_FILES['avatar']['name'], '.');

//Gestion des erreurs
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type .jpg,.gif ou .png';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop volumineux...';
}

if($infos_img[0] > 100 && $infos_img[1] >100)
{
$erreur = '<strong>les dimensions de votre images sont trop grandes . Pour rappel 100 x100 px</strong>';
}

if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{

// ici on déplace le fichier ou on veut
if (!move_uploaded_file($_FILES['avatar']['tmp_name'],'avatars/'.$name_file) )
{
echo "Erreur, contactez l'administrateur...";
}
else
{
echo "Fichier ".$name_file." ajouté";
echo "<br><br>Pour afficher votre image dans une page, inserez le code suivant : <b>((/img/".$name_file."))</b>";
}
}
else
{
echo $erreur;
}
}

?>
Configuration: vista premium
Internnet explorer 7

6 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    $_FILES['avatar'] n'existe pas parce que tu n'as pas mis enctype="multipart/form-data" sur la balise <form>
    1
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Quelle erreur as-tu ?
    0
  3. adama3636 Messages postés 69 Statut Membre
     
    Notice: Undefined index: avatar in F:\EasyPHP5.3.0\www\projet site web\controle_testform.php on line 17

    Notice: Undefined index: avatar in F:\EasyPHP5.3.0\www\projet site web\controle_testform.php on line 18

    Notice: Undefined index: avatar in F:\EasyPHP5.3.0\www\projet site web\controle_testform.php on line 19

    Warning: getimagesize() [function.getimagesize]: Filename cannot be empty in F:\EasyPHP5.3.0\www\projet site web\controle_testform.php on line 19

    Notice: Undefined index: avatar in F:\EasyPHP5.3.0\www\projet site web\controle_testform.php on line 21
    Vous devez uploader un fichier de type .jpg,.gif ou .png
    0
  4. adama3636 Messages postés 69 Statut Membre
     
    ok merci ca passe ! mais jarrive pas a avoir l'image dans le dossier avatar/
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. adama3636 Messages postés 69 Statut Membre
     
    et pourtant il est affiché que tout est ok
    0
  7. H0gS Messages postés 380 Statut Contributeur 36
     
    Bonjour à vous,

    Cette discussion a été signalé comme étant Résolu. Pourtant, après avoir lu la discussion, je constate que le problème n'a toujours pas été réglé.

    Je vais attendre qu'adama3636 me confirme que tout est bel et bien réglé avant de modifier le statut de cette discussion pour Résolu.

    Merci de votre compréhension.
    @+
    0