Bonjour,
Je n'arrive pas à trouver d'où viendrai cette erreur :
En effet, j'ai une page ou je sélectionne des informations en provenance d'une base(BDD1) et je fais une mise à jour dans cette base. Si tout se passe bien, on est redirigé vers une autre page avec ces mêmes informations (par des variables de sessions) pour la mise à jour d'une autre base(BDD2)
première page :
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
 
 
$host="host";
$user="user";
$pass="pass";
 
$bdd="BDD1";
               $link=@mysql_connect($host,$user,$pass);
               if(!$link){
                    header("location:../message/message_err.php?ERR=SRV");
	            exit();
                 }else{
                        $link0=@mysql_select_db("$bdd");
                        if(!$link0){
                          header("location:../message/message_err.php?ERR=BSE");
		          exit();
                        }
                 }
 
 
$Table="agent";
 
		$SQL_SELECT="Select Id_user_reservation, User_agent, Passe_agent from $Table where Num_agent=$lenumagent";
		$lresult=mysql_query($SQL_SELECT) or die (mysql_error());
 
                if($leresult=mysql_fetch_array($lresult)){
 
			$leuseragent = $leresult['User_agent'];
			$lepasseagent = $leresult['Passe_agent'];	
			$lidagentreservation = $leresult['Id_user_reservation'];
		}
 
            //--variable session
 
            $_SESSION['LIDRESERVATION']=$lidagentreservation;
            -------
            --------
 
 
            //--mise à jour BDD1
             if(!empty($_POST['valid']))
	     $lavalid=$_POST['valid'];
	//$Table="agent";
 
	if(!empty($lavalid)){
 
		$leuser = $_POST['identif2'];
		$lepass = $_POST['pass2'];	
 
        $ltheme = $_POST['theme'];
        $lvaleur = $_POST['valeur'];
 
 
		//--Mise à jour dans la base
 
		$SQL_UPDATE="UPDATE $Table
 
			SET 
			User_agent = '$leuser', 
			Passe_agent = '$lepass',
                        Theme_agent = '$ltheme',
                        Val_Them_agent ='$lvaleur'
			where Num_agent= $lenumagent";
 
		$monresult=@mysql_query($SQL_UPDATE) or die (mysql_error());
 
		$_SESSION['LENEWUSER']=$leuser;
		$_SESSION['LENEWPASSE']=$lepass;
 
		//--fermer la connexion
 
 
		mysql_close();
 
 
		//--redirection vers la page de MAJ dans la base réservation
 
		header("location:newcoord_reservation.php");
		exit();
 
	}
dans la page newcoord_reservation.php on a
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
37
38
39
 
$host="host"; //remarque c'est le même serveur
$user="user1";
$pass="pass1";
 
$bdd="BDD2";
$Table1="mrbs_users";
$leuser = $_SESSION['LENEWUSER'];
$lepass = $_SESSION['LENEWPASSE'];
$lidagentreservation = $_SESSION['LIDRESERVATION'];
 
$SQL_UPDATE="UPDATE $Table1 
				SET 
				name = '$leuser', 
				password = '$lepass1' 
				where id = $lidagentreservation";
 
			$monresultat=@mysql_query($SQL_UPDATE);
 
                         if(!empty($monresultat)){
 
				//retourne le nombre de ligne affecté par UPDATE, DELETE, etc. et non SELECT et SHOW
				$nbr_lgn=mysql_affected_rows($monresultat);
			}
 
                        mysql_close();
 
 
			if($nbr_lgn<1){
				//--pas d'update
				header("location:../message/message_err.php?ERR=BSM");
				exit();
 
			}else{
 
				//--redirection vers message lorsque tout s'est bien passé
				header("location:../message/message.php?T=CCO");
				exit();
			}
Ce que je ne comprend pas c'est que dans mes deux bases les mise à jour sont effectuées, mais dans la deuxième page je suis renvoyé vers la page d'erreur comme si l'update de cette page n'a pas été effectué. J'ai cherché à afficher la variable $nbr_lgn mais elle est vide. Pourtant j'ai utilisé mysql_affected_rows ailleurs mais je n'ai pas eu de problème. Je ne sais pas si c'est le fait de changer de base de données qui cause cela ? Toutefois je constate quand même que la base est mise à jour avec les données en provenance du premier fichier. Je suis sur PHP 5.1
Quelqu'un pourrai s'il vous plaît me dire à quoi cela peut être dû ? En vous remerciant !