Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/02/2011, 08h47   #1
Nouveau Membre du Club
 
Avatar de caro71ol
 
caroline
Étudiant
Inscription : janvier 2011
Messages : 140
Détails du profil
Informations personnelles :
Nom : caroline
Âge : 20

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 140
Points : 28
Points : 28
Par défaut fonction modifier n'a marché qu'une fois

j'ai la fonction suivante qui est parmie tant d'autre qui appelle le fichier modifhoraire.php, qui fait la mise à jour. La modification s'est effectuée correctement une fois. maintenant j'ai le message comme quoi la modification a été effectuée mais rien a changé dans la base.

Code :
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
function modifhor(){
			var xhr = getXhr();
			if(!test('jour')){
				alert('Selectionnez un jour!');
				return false;
			}
			 if(!test('activite3')){
					alert('Selectionnez une activite du jour!');
					return false;
				}
				if(!test('choixhdebut3')){
					alert('Selectionnez une heure dans la liste!');
					return false;
				}
				else
				{
					var sel = document.getElementById('activite3');
					var idactivite=sel.options[sel.selectedIndex].value;
					var sel2 = document.getElementById('choixhdebut3');
					var choixhdeb=sel2.options[sel2.selectedIndex].value;
					xhr.open("POST","modifhoraire.php",false);
					xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
					xhr.send("idActivite="+idactivite+"&choixhd="+choixhdeb);
					var rep= xhr.responseText;
					if (rep=="false"){
					alert('Creneaux déjà utilisés!');
					return false;
					}
					else {
					alert('Modification effectuée');
					return true;
					}
				}						
	}
Code :
1
2
 
<input type="submit" name="modifier[hdebut]" id="modifhd" value="Modifier l'heure de l'activité" style="height:50px;font-size:18px" onclick="return modifhor();">


modifhoraire.php:
Code :
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
$ret="false";
		// test si il y a une activité selectionné
	if( isset($_POST['idActivite']) ) {
	//recupere la value de l'activité du jour choisie
			$activite=$_POST["idActivite"];
			//recupere la value de lheure debut choisie
			$choixhd=$_POST['choixhd'];
			$hd2=$choixhd+1;
		$hd3=$hd2+1;
		$ex=mysql_query("SELECT * FROM planning WHERE num_creneau='$hd2' ;") or die ('Erreur sql!'.$ex.'<br/>'.mysql_error());
		$ex2=mysql_query("SELECT * FROM planning WHERE num_creneau='$hd3' ;") or die ('Erreur sql!'.$ex2.'<br/>'.mysql_error());
		$num=mysql_num_rows($ex);
		$num2=mysql_num_rows($ex2);
		if($num==0 AND $num2==0) {
			//incrementaton pour la boucle
			$choixfin=$choixhd+3;
			//requete pour selectionner lheure debut de l'activité
			$res = mysql_query("SELECT * FROM creneau WHERE id_creneau=(SELECT MIN(num_creneau) FROM planning  WHERE num_planning='$activite');")
			or die ('Erreur sql!'.$res.'<br/>'.mysql_error());
			$row=mysql_fetch_assoc($res);
			//recupere le resultat de la requete dans une varable
			$cren=$row['id_creneau'];
			//boucle pour modifier les numero de creneau dans le planning
			for ($i=$choixhd;$i<$choixfin;$i++){
					$res2 = mysql_query("UPDATE planning
															SET num_creneau='$i'
															WHERE num_creneau='$cren';")
					or die ('Erreur sql!'.$res2.'<br/>'.mysql_error());
					//creneau à modifier suivant
					$cren+=1;
			}
			$ret="true";
		}
 
	}
	echo $ret;
mysql_close();	
?>
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2011, 08h54   #2
Futur Membre du Club
 
Inscription : septembre 2009
Messages : 36
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 36
Points : 15
Points : 15
Bonjour ,

Quand tu fais ces requêtes :

Code :
1
2
3
 
$ex=mysql_query("SELECT * FROM planning WHERE num_creneau='$hd2' ;") or die ('Erreur sql!'.$ex.'<br/>'.mysql_error());
		$ex2=mysql_query("SELECT * FROM planning WHERE num_creneau='$hd3' ;") or die ('Erreur sql!'.$ex2.'<br/>'.mysql_error());
Il te retourne un resultat ?
steven78700 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2011, 09h40   #3
Nouveau Membre du Club
 
Avatar de caro71ol
 
caroline
Étudiant
Inscription : janvier 2011
Messages : 140
Détails du profil
Informations personnelles :
Nom : caroline
Âge : 20

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 140
Points : 28
Points : 28
en fait, l'erreur venait du fait que j'avais un form pour tous mes onglets et tous les formulaires. J'ai donc mis un form pour chaque formulaire pour les differencier dans la page.

Code :
<form method="post" onsubmit="return modifacti();">
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2011, 09h41   #4
Nouveau Membre du Club
 
Avatar de caro71ol
 
caroline
Étudiant
Inscription : janvier 2011
Messages : 140
Détails du profil
Informations personnelles :
Nom : caroline
Âge : 20

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 140
Points : 28
Points : 28
merci quand meme
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h49.


 
 
 
 
Partenaires

Hébergement Web