Bonjour, dans mon formulaire j'upload une image en tant qu'avatar.
Lorsque je souhaite faire une MAJ, je peux la faire que si je n'ai qu'une image par défaut.

Si dans ma fiche j'ai déjà un avatar avec l'id de la fiche, il refuse d'écraser cette image et de me la remplacer par la nouvelle.

Je colle mes deux codes.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
//--->>> upload de la photo
 
			//si fichier à uploader
			if ($avatar_perso != NULL) 
			{
				if (!empty($_FILES['avatar_perso']['tmp_name']) AND is_uploaded_file($_FILES['avatar_perso']['tmp_name'])) {
					//vérif. poids du fichier
					if(filesize($_FILES['avatar_perso']['tmp_name'])>30000){
					echo("Erreur : taille supérieure à 30ko!");
					}
					else if(filesize($_FILES['avatar_perso']['tmp_name'])<30000) {
					//Vérif type de fichier
					list($largeur, $hauteur, $type, $attr)=getimagesize($_FILES['avatar_perso']['tmp_name']);
						//Si pas Jpeg
						if($type !=2 ) {
						echo("Erreur : ce n'est pas un fichier JPEG!");
						} 
						//Sinon : OK
						else if($type===2) {
						//on select le perso qui vient d'être ajouté:
						$av_perso = mysql_query("Select id, nickFR FROM heros WHERE nickFR = '".mysql_real_escape_string($nickFR)."'");
						$assoc_req = mysql_fetch_assoc($av_perso);
						$id_perso = $assoc_req['id']; //id du nouveau perso = nom image
							//on bouge le fichier sur le serveur
							if(move_uploaded_file($_FILES['avatar_perso']['tmp_name'], 'images/avatars/'.intval($id_perso).'.jpg')) {
							mysql_query("UPDATE heros SET image = '".mysql_real_escape_string($id_perso)."' WHERE id ='".mysql_real_escape_string($id_perso)."'");
							}
							else {
							//Erreur
							echo("Erreur lors du chargement...");
							}
						}
					}
				}
			}
				//-->> fin upload de la photo
Le même code modifier pour faire une maj

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//si fichier à uploader
			if ($avatar_maj != NULL) 
			{
				if (!empty($_FILES['avatar_maj']['tmp_name']) AND is_uploaded_file($_FILES['avatar_maj']['tmp_name'])) {
					//vérif. poids du fichier
					if(filesize($_FILES['avatar_maj']['tmp_name'])>30000){
					echo("Erreur : taille supérieure à 30ko!");
					}
					else if(filesize($_FILES['avatar_maj']['tmp_name'])<30000) {
					//Vérif type de fichier
					list($largeur, $hauteur, $type, $attr)=getimagesize($_FILES['avatar_maj']['tmp_name']);
						//Si pas Jpeg
						if($type !=2 ) {
						echo("Erreur : ce n'est pas un fichier JPEG!");
						} 
						//Sinon : OK
						else if($type===2) {
 
							//on bouge le fichier sur le serveur
							if(move_uploaded_file($_FILES['avatar_maj']['tmp_name'], '../images/avatars/'.intval($idmaj).'.jpg')) {
							mysql_query("UPDATE heros SET image = '".mysql_real_escape_string($idmaj)."' WHERE id ='".mysql_real_escape_string(
$idmaj)."'");
							}
							else {
							//Erreur
							echo("Erreur lors du chargement...");
							}
						}
					}
				}
			}
				//-->> fin upload
grosso modo tous mes updates se font, mais j'ai l'impression que l'image n'est pas écrasée sur le serveur si elle a le même nom.

Merci de votre aide.