PHP traitement qui continue

Résolu
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   -  
zatlags Messages postés 264 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à vous,
J'ai un petit formulaire pour uploader des photos, en gros, si une image est chargée, il m'enregistre le chemin et le titre dans ma bdd, si aucune image n'est uploadé, il enregistre uniquement le titre et laisse blanc.

Mon soucis, c'est que quand je charge une image, il me fait les deux traitements et je me retrouve avec deux enregistrements dans ma bdd:

if(isset($_POST['action'])){

	$titre_image = mysql_real_escape_string($_POST['titre_image']);
	$titre_image2 = mysql_real_escape_string($_POST['titre_image2']);
	$texte_image = mysql_real_escape_string($_POST['texte_image']);
	$texte_image2 = mysql_real_escape_string($_POST['texte_image2']);
	$nom_categorie = mysql_real_escape_string($_POST['nom_categorie']);

	 // -------------
  // SI on a bien une photo uploadée :
  if(isset($_FILES['userfile']) && $_FILES['userfile']['size']>0)
  {
  // -------------------------------------
	// 1/ GESTION DES ERREURS de la photo
	// -------------------------------------
	if ($_FILES['userfile']['size'] > 2097152) {
		$msgErreurPhoto .= '<center>'.'<br/>'.'<p style="color:#ff0000;font-weight:bold;">La taille de votre image est trop importante (Maximun: 2Mo)</p>'.'</center>';
		$traiterPhotoOK = 'NON';
	}

		else {
	$traiterPhotoOK ='OK';
	}
		
	// -------------------------------------
	// 2/ si pas d'erreur : TRAITEMENT
	// -------------------------------------
	if ($traiterPhotoOK=='OK')
	{

		$sq = "INSERT INTO images VALUES('','$titre_image','$titre_image2','$texte_image','$texte_image2','$chemin_categorie/images/$nFile','$chemin_categorie/mini/$nFile','$categorie')"; 
		$quer = mysql_query($sq) or die('erreur sq: '.mysql_error());
		// -------------
		// message de validation
		$msgvalidPhoto 	= 'La photo a été uploadée';
		
	} // fin TRAITEMENT Photo
  }
  if($traiterPhotoOK ='NON'){
	
	$sq = "INSERT INTO images VALUES('','$titre_image','$titre_image2','$texte_image','$texte_image2','','','$categorie')"; 
	$quer = mysql_query($sq) or die('erreur sq: '.mysql_error());
	
	$traiterPhotoOK='OK';
	}
} // fin traitement
A voir également:

4 réponses

vordano Messages postés 1685 Date d'inscription   Statut Membre Dernière intervention   316
 
moi je suis pas d'accord, le code est pas correct ^^

if($traiterPhotoOK ='NON')//rajoute un =
1
zatlags Messages postés 264 Date d'inscription   Statut Membre Dernière intervention   59
 
HAHAHA nice, je ne l'avais pas remarqué.

J'ai pas encore prix mon café.
0
zatlags Messages postés 264 Date d'inscription   Statut Membre Dernière intervention   59
 
code est correct, regard les code autour de ton fichier
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
J'ai trouvé, je suis vraiment un gros gros nul,
Sur cette ligne:

 if($traiterPhotoOK ='NON')


J'ai oublié un =, je donne la valeur non au lieu de comparer.

Désolé de t'avoir fait perdre ton temps :(
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Yep !

Merci beaucoup d'avoir pris la peine de regarder.
--
0