Problème au niveau de update avatr

testgaime

Nouveau membre
#1
Salut tout le monde,

J'ai écrit mes des fichiers update_avatar.func.php et update_avatar.php sans erreurs mais je n'arrive pas modifier mon image de profile c'est-à-dire quand je clique sur VALIDER j'ai toujours mon image de profile par défaut. Aidez - moi !

Voici mes fichiers php :

update_avatar.func.php

Code:
<?php
//la function qui av changer l'image du profile
try{
function modifier_image_profile($avatar_tmp, $avatar)
{
global $bdd; // déclaration globale de BDD
move_uploaded_file($avatar_tmp,'avatar/'.$avatar);
$req = $bdd->exec("
UPDATE utilisateurs SET avatar='?' WHERE pseudo='?'");

}
 
}catch(Exception $e){
  // en cas d'erreur :
   echo " Erreur ! ".$e->getMessage();
   echo " Les datas : " ;
}
?>
update_avatar.php

Code:
<?php
include('functions/membre.func.php');
include('body/header.php');
include('body/menu.php');
?>
<h3>Changer votre image de profile</h3>
<?php

    if(isset($_POST['submit']))
	{
	    $avatar = $_FILES['avatar']['name'];
		$avatar_tmp = $_FILES['avatar']['tmp_name'];
		if(!empty($avatar))
		{
		    $image_ext = strtolower(end(explode('.',$avatar)));
			
			if(in_array($image_ext,array('jpg','jpeg','png','gif')))
			{
			     modifier_image_profile($avatar_tmp,$avatar);
				 header("Location:index.php?page=membre");
			}else{
			   echo"<div class='error'>Veuillez saisir une image valide</div>";
			}
		}
	}
foreach($infos as $info)
{
   ?>
     <img src='avatar/<?php echo $info['avatar']; ?>' height='100' width='100' alt='avatar'>
   <?php
}
?>
<form method='POST' action='' enctype='multipart/form-data'>
<input type="file" name="avatar"><br /><br />
<input type="submit" value="Valider" name="submit">
</form>
 

mdjdenormandie

Habitué
#2
bonjour,
il y a plusieurs choses bizarre dans votre code :
1) votre try catch entoure la déclaration de votre fonction mais pas son exécution, mettez le try catch dans la fonction
2) dans la liste des include vous n'avez pas mis le fichier qui contient la fonction ( je pense que vous avez juste oublié de le copier collé ici mais vérifiez)
3) vous n'avez pas d'erreurs qui s'affiche ? vérifiez que votre PHP.ini soit bien configuré pour afficher les erreurs sur votre serveur de développement

ensuite bon je chipote sur des détails mais :
4) l'attribut "action" dans votre formulaire est vide ce qui est une erreur sellons le W3C, soit vous ne le mettez pas soit vous faites comme moi et mettez un "#" dedans
5) les input dans des DIV pour les styliser et ne pas utiliser des BR ( les BR sont faites pour être mises dans des balises P avec du texte et pas ailleurs )
6) le texte jamais directement dans une DIV, rajoutez une balise P dans la DIV pour y mettre le texte, bien que sa ne soit pas une erreur selon le W3C s'en est une pour la sémantique de la page (et donc son référencement)
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Membres en ligne
  • Millan
Derniers messages publiés
Statistiques globales
Discussions
864 563
Messages
8 049 612
Membres
1 575 061
Dernier membre
Firasbhr
Partager cette page
Haut