Bonjour à tous,
Cela fait quelques heures que je tourne en rond avec un problème qui doit être très simple à régler - j'imagine - mais dont je n'arrive pas à trouver la solution...

le problème est simple, j'ai un script qui s'occupe soit de mettre à jour les champs d'une table mysql, soit d'y insérer de nouvelles données. Lorsque l'update ou l'insert sont ok, je renvoie la valeur true (ou false si erreur).

Mon problème c'est que l'update renvoie bien ma valeur "true" alors que l'insertion non...pourtant l'insertion en base se fait bien, mais aucun retour "true"...rien !

donc en gros l'update et l'insertion fonctionnent, mais seul l'update renvoie la valeur "true", et je ne comprend pas pourquoi.

Bon un peu de code à montrer :
Code php : 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
session_start();
	$_userID = $_SESSION['ID'];
	$_userEmail = $_SESSION['email'];
 
 
if($_POST) {
	$_idFavoris = $_POST['idFavoris'];
	$_idFamille = $_POST['idFamille'];
	$_nomFamille = utf8_decode($_POST['nomFamille']);
	$_idType = $_POST['idType'];
	$_nomType = utf8_decode($_POST['nomType']);
	$_idActivite = $_POST['idActivite'];
	$_nomActivite = utf8_decode($_POST['nomActivite']);
	$_idNiveau = $_POST['idNiveau'];
	$_nomNiveau = utf8_decode($_POST['nomNiveau']);
	$_idFonction = $_POST['idFonction'];
	$_nomFonction = utf8_decode($_POST['nomFonction']);
 
 
 
 
			$Result = mysql_query("UPDATE favoris SET typeID='$_idType', typeNom='$_nomType', activiteID='$_idActivite', activiteNom='$_nomActivite', niveauID='$_idNiveau', niveauNom='$_nomNiveau', fonctionID='$_idFonction', fonctionNom='$_nomFonction' WHERE ID='$_idFavoris' ") or die(mysql_error());		 
 
			if (mysql_affected_rows()==0) {
				$Result = mysql_query("INSERT favoris SET userID='$_userID', familleID='$_idFamille', familleNom='$_nomFamille', typeID='$_idType', typeNom='$_nomType', activiteID='$_idActivite', activiteNom='$_nomActivite', niveauID='$_idNiveau', niveauNom='$_nomNiveau', fonctionID='$_idFonction', fonctionNom='$_nomFonction' ") or die(mysql_error());
			}
 
 
			if ($Result) {	
				$data = array("insert" => true);
				echo json_encode($data);	
			} else {
				$data = array("insert" => false);
				echo json_encode($data);			
			}


Voilà, je ne comprend pas pourquoi...une aide ??

Merci d'avance
Olivier