Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
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, 10h08   #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 comparaison qui en fait qu'à sa tête

j'ai le code suivant:

Code :
1
2
3
4
5
6
7
8
9
10
11
					var rep= xhr.responseText;
					alert(rep);					
					if(rep=="false"){
						alert('Erreur,Choisir un autre horaire!');
						return false;
					}				
					else 
					{	
						alert('Modification de l\'heure effectuée');
						return true;
					}
sauf que que si l'on recoive "false" ou "true", il affiche "Modification ...".
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2011, 10h12   #2
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
des caractères parasites comme des espaces, \n,....?
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2011, 10h24   #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
non j'ai verifié justement et dans le alert de la réponse reçue est correct.
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h19   #4
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
méfies toi de l'encodage de ton fichier coté serveur
de plus assures toi que ton fichier est sans bom

et plus simplement teste le retour caractère par caractère pour savoir ce que tu obtiens réellement dans la reponse
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h34   #5
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 805
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 805
Points : 35 810
Points : 35 810
Tu es sûre que le serveur renvoie bien la chaine de caractères "false" (et non pas le booléen false) ?
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h36   #6
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
un reponseText ne peut à priori renvoyer qu'une chaine de caractères non ?

d'ou la necessité de vérifier le contenu du retour
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h49   #7
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
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
39
40
41
42
43
44
45
46
47
48
<?php
//debut de session
	session_start();
	//connection et selection base de données
		mysql_connect("localhost","root","") or die("Mysql connect error");
		mysql_select_db('reservation');
		$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) {
			$ret='false';
		}
		else {
			//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();	
?>
voici tout le code php du fichier appelé.
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h52   #8
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
ton fichier php a-t-il du BOM ?
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h54   #9
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
du BOM?
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 14h59   #10
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
définition wiki du BOM
http://fr.wikipedia.org/wiki/Byte_Order_Mark

ouvres ton fichier avec notepad++ et regarde dans encodage ...
il devrait être en utf-8 sans BOM
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 15h02   #11
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
encoder en ANSI
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 15h05   #12
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 339
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 339
Points : 546
Points : 546
@Bovino, je pense que la dame connait ce qu'elle reçoit puisqu'elle a mis un alert() dans son code

Citation:
Envoyé par caro71ol Voir le message
encoder en ANSI
Sinon au lieu de traiter un simple responseText, tu génère du JSON histoire d'avoir un objet de retour, pas une simple réponse qui peut justement être problèmatique.

Code :
1
2
3
4
 
{
    result : true;
}
Mais si ça te fait trop de boulot, tu peux au pire tester la chaine de retour via une regexp au lieu d'un test d'égalité :
Code :
1
2
3
4
5
6
7
8
9
10
11
 
var rep = xhr.responseText;
alert(rep);
if (/false/.test(rep)) {
    alert('Erreur,Choisir un autre horaire!');
    return false;
}
else {
    alert('Modification de l\'heure effectuée');
    return true;
}
dukej est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 15h05   #13
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
tu as donc du bom et le retour contient les caractères du BOM avant le false
teste le contenu retourné en faisant par exemple un
Code :
alert(retoutext.length)
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 15h50   #14
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
Citation:
Envoyé par SpaceFrog Voir le message
tu as donc du bom et le retour contient les caractères du BOM avant le false
teste le contenu retourné en faisant par exemple un
Code :
alert(retoutext.length)
donc alors dans le alert j'ai 7 lettres pour "true" et 8 lettres pour"false"
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 16h10   #15
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 339
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 339
Points : 546
Points : 546
Citation:
Envoyé par caro71ol Voir le message
donc alors dans le alert j'ai 7 lettres pour "true" et 8 lettres pour"false"
Donc oui tu as un bom, le bom fait 3 caractères
mais si tu avais vu mon message avant celui de spaceFrog je te donne la parfaite solution pour éviter de te casser la tête avec ce problème. Mais si tu préfères passer par une solution qui risque de réapparaître plus tard parce que tu n'es pas à l'abri qu'une personne qui passe derrière toi et refasse la bêtise d'enregistrer le fichier avec le BOM
dukej est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 16h17   #16
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
Citation:
Envoyé par dukej Voir le message
Donc oui tu as un bom, le bom fait 3 caractères
mais si tu avais vu mon message avant celui de spaceFrog je te donne la parfaite solution pour éviter de te casser la tête avec ce problème. Mais si tu préfères passer par une solution qui risque de réapparaître plus tard parce que tu n'es pas à l'abri qu'une personne qui passe derrière toi et refasse la bêtise d'enregistrer le fichier avec le BOM
j'ai vu ton message, là j'ai juste fait le test pour voir le probleme c'est tout

et en effet j'ai utilisé et testé ta solution et cela fonctionne.
Code :
1
2
3
4
5
6
			if(/false/.test(rep)){
				alert("Erreur, Choisir un autre horaire!");
				return false;
			}		
			alert("Modification de l'horaire effectuée.");
			return true;

Et cela vient de quoi qu'il y a 3 caractères en plus?
caro71ol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 16h28   #17
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
C'est vraiment la peine que l'on réponde ?
Tu risque de ne pas lire la réponse, vu qu'elle t'a déja été donnée deux fois précédemment ...

B O M


j'avoue ne pas être fan de la solution regexp ou indexOf éventuellement

__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 21h22   #18
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 339
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 339
Points : 546
Points : 546
Citation:
Envoyé par SpaceFrog Voir le message
C'est vraiment la peine que l'on réponde ?
Tu risque de ne pas lire la réponse, vu qu'elle t'a déja été donnée deux fois précédemment ...

B O M


j'avoue ne pas être fan de la solution regexp ou indexOf éventuellement

Quand tu sais que le retour serveur en mode texte pur peut être un peu moisi comme c'est le cas ici, il n'y a pas 36 solutions.
J'aurai peut être du l'encadrer de \b : /\bfalse\b/
dukej est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 21h30   #19
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 126
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 126
Points : 7 270
Points : 7 270
Citation:
Envoyé par dukej Voir le message
Quand tu sais que le retour serveur en mode texte pur peut être un peu moisi comme c'est le cas ici, il n'y a pas 36 solutions.
Le meilleurs façon c'est d'encoder tout le site en UTF-8

A+.
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 21h50   #20
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 339
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 339
Points : 546
Points : 546
Citation:
Envoyé par andry.aime Voir le message
Le meilleurs façon c'est d'encoder tout le site en UTF-8

A+.
ca ouais, mais dans le processus complet de la création d'un site, tu as toujours des boulets pour convertir ton fichier en ansi ou autre. Sans compter certaines DB qui sont en ISO-8859-1
dukej 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 10h50.


 
 
 
 
Partenaires

Hébergement Web