IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

PHP et Javascript


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut PHP et Javascript
    Bonjour.
    Je fait une fonction javascript pour faire un calcul. Cette fonction utilise quelques variables de sessions. J'ai codé comme ceci mais ça ne marche pas.
    quelqu'un peut-il m'eclairer?

    Merci

    <?
    session_start
    ();


    ?>

    <html>
    ******<head>
    ************<title>PROLOG</title>
    ******************
    ************<script language=JavaScript><!--
    ************************
    ************************
    ************
    ************//fonction calcul de la clairance
    ************function calculClairance()
    ************{
    var dN = '<? print $_SESSION['dateN']; ?>';
    ******************var dRCP = '<? print $_SESSION['dateRCP']; ?>';
    ******************var sexe = '<? print $_SESSION['sexe']; ?>';
    ******************var ct1;
    ******************var ct2;
    ******************var ct3;
    ******************var p;
    ******************var c;******************************
    ******************var a;
    ******************p=document.calcul.poids.value
    ******************c=document.calcul.creatinine.value
    ******************ct1=140;
    ******************ct2=1.03;
    ******************ct3=1.23;******************************
    ******************a=dRCP-dN;
    ******************var clairance;
    ******************if (sexe==’F’)
    ******************{
    ************************clairance=Math((((ct1-a)*p)/c)*ct2);
    ******************}
    ******************else
    ******************{
    ************************clairance=Math((((ct1-a)*p)/c)*ct3);
    ******************}
    ************************document.calcul.clairance.value=clairance;
    ******************}
    ************--></script> ******************
    ******</head>

    <body><!--corps de la page html-->

    <form name='calcul' method="post" action="verifSuiteD.php5" >

    Poids<input type=text name="poids" size=5 <? Print "value=".$_SESSION['poids'];?>> Kg
    Créatinine<input type="text" name="creatinine"**onBlur="calculClairance()" size=3 maxlength='3' <? Print "value=".$_SESSION['creatinine'];?>>&micromol/l
    Clairance<input type="text" name="clairance" size=5 maxlength='5' readonly=1 <? Print "value=".$_SESSION['clairance'];?>>ml/mn
    Colorez votre code PHP sur les forums grâce à Developpez.com

  2. #2
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    C'est loin d'être précis le : 'Ca marche pas.'

    Tu ne veux pas développer parceque là j'ai du mal à t'aider

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    je reçois juste un message d'erreur "erreur sur la page".

    quel est le moyen sinon pour voir les erreur

  4. #4
    Membre du Club Avatar de liza83
    Profil pro
    Étudiant
    Inscrit en
    Mai 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2004
    Messages : 52
    Points : 63
    Points
    63
    Par défaut
    Si c'est une erreur javascript, les navigateurs sont souvent accompagnés de debuggeur plus ou moins puissants.

    Firefox propose un debuggeur intégré (accessible via outils)
    IE indique l'erreur javascript en double cliquant sur l'icone jaune juste avant "Erreur sur la page".
    Et les autres comme Opera doivent surement avoir leurs solutions à ce problème

    Bon courage.

  5. #5
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    Déja pour commencer tu devrais afficher ton code html pour voir si tout a bien été généré avec le php, une fois là tu peux commencer à débugger !

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    en gros, quand je quitte le champ "creatinine", il n'affiche rien dans le champ "clairance". Et en bas est ecrit "erreur sur la page".
    En cliquant sur l'icone jaune l'erreur est: "Cet objet ne gere pas cette propriété ou cette methode".

    Je ne comprend pas. Est ce qu'au moins mon code vous parait correct ou je suis à coté!

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    l'affichage de la page est parfait.

  8. #8
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    Affiche ton code html (code source sour IE, Ctrl+U pour FF)

    ensuite regarde si ton script JS a l'air correct avec les variables php qui auront été remplacées

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    tout va bien de ce coté là.
    il affiche bien la dateN, dateRCP et le sexe dans le code source.

    ça doit être dans ma fonction qu'il y a un probleme mais je ne vois pas! Help

  10. #10
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    Citation Envoyé par maraly
    tout va bien de ce coté là.
    il affiche bien la dateN, dateRCP et le sexe dans le code source.

    ça doit être dans ma fonction qu'il y a un probleme mais je ne vois pas! Help
    Ben si tout va bien côté php il te faut t'adresse au forum javascript maintenant

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    Ok

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut PHP et javascript
    Bonjour,
    J'ai posté mon probleme sur le forum php mais apparemment tout va bien du coté php. Donc voila mon probleme:

    j'utilise des variables de sessions dans ma fonction javascript. Voici mon code

    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
     
    <?
    session_start();
     
     
    ?>
     
    <html>
    	<head>
    		<title>PROLOG</title>
     
    		<script language=JavaScript><!-- 			
     
    		function calculClairance()
    		{					
    		var dateN = '<?php echo $_SESSION['dateN']'; ?>
    		var dateRCP = '<?php echo $_SESSION['dateRCP']'; ?>
                             var sexe = '<?php echo $_SESSION['sexe']'; ?>	
    		var dN = dateN.getFullYear();
    		var dRCP = dateRCP.getFullYear();			
    		var age = Math(dRCP-dN);
    		var ct1;
    		var ct2;
    		var ct3;
    		var p;
    		var c;			
    		p=document.calcul.poids.value;
    		c=document.calcul.creatinine.value;	
    		ct1=140;
    		ct2=1.03;
    		ct3=1.23;					
    		var clairance;
    		if (sexe=="F")
    		{
    			clairance=Math((((ct1-age)*p)/c)*ct2);
    		}
    		else
    		{
    			clairance=Math((((ct1-age)*p)/c)*ct3);
    		}
    		document.calcul.clairance.value=clairance;					
    		}
    		--></script> 			
    	</head>
     
    <body><!--corps de la page html-->
     
    <form name='calcul' method="post" action="verifSuiteD.php5" >
     
    Poids<input type=text name="poids" size=5 <? Print "value=".$_SESSION['poids'];?>> Kg 
    Créatinine<input type="text" name="creatinine"  onBlur="calculClairance()" size=3 maxlength='3' <? Print "value=".$_SESSION['creatinine'];?>>&micromol/l
    Clairance<input type="text" name="clairance" size=5 maxlength='5' readonly=1 <? Print "value=".$_SESSION['clairance'];?>>ml/mn
    Et quand je quitte le champ creatinine, il ne se passe rien dans le champ clairance!!!!
    Le message d'erreur est "Cet objet ne gere pas cette propriété ou cette methode".
    Je ne comprend pas? Ou est l'erreur?

    Merci de m'aider
    Ou est mon erreur?

  13. #13
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Pour commencer tu as des problème de quotes et ';' à régler (peut etre que ca vient de là, ca reste à voir)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var dateN = '<?php echo $_SESSION['dateN']'; ?>
    		var dateRCP = '<?php echo $_SESSION['dateRCP']'; ?>
                             var sexe = '<?php echo $_SESSION['sexe']'; ?>
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var dateN = '<?php echo $_SESSION['dateN']; ?>';
    		var dateRCP = '<?php echo $_SESSION['dateRCP']; ?>';
                             var sexe = '<?php echo $_SESSION['sexe']; ?>';

  14. #14
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Points : 1 357
    Points
    1 357
    Par défaut
    Bonjour,

    Ceci est incorrect :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    clairance = Math((((ct1 - age) * p) / c) * ct2);
    Ce serai plutôt, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    clairance = Math.round((((ct1 - age) * p) / c) * ct2);
    Et il me semble qu'avoir une variable de même nom qu'un champ (clairance) peut éventuellement poser un problème.

  15. #15
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 131
    Points : 95
    Points
    95
    Par défaut
    Moi je pense qu il y a un petit conflit de variable dans ton code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    var clairance;
    		if (sexe=="F")
    		{
    			clairance=Math((((ct1-age)*p)/c)*ct2);
    		}
    		else
    		{
    			clairance=Math((((ct1-age)*p)/c)*ct3);
    		}
    		document.calcul.clairance.value=clairance;
    tu definis une variable clairance pour stocker ce que tu calcul et ensuite tu utilise clairance comme etant un objet de ton script et dc pour javascript clairence n est polus ton input mais une variable d ou le message clairence etant une variable n a pas de methode value ....

    Essaie de modifier le nom de ta variable

    Oups j avais pas vu le message juste au dessu sla derniere ligne

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    Merci beaucoup de vos remarques et aides.
    J'ai changé suivant vos conseils mon code mais ça ne marche toujours pas.

    voici le nouveau code
    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
    <html><!--ouverture page html-->
     
    	<head><!--ent-tête de la page html-->
    			<title>PROLOG</title>
     
    				<script language="JavaScript"><!-- 
    				function calculClairance()
    				{					
    					var dateN = '<?php echo $_SESSION['dateN']; ?>';
    					var dateRCP = '<?php echo $_SESSION['dateRCP']; ?>';
    					var sexe = '<?php echo $_SESSION['sexe']; ?>';	
    					var dN = dateN.getFullYear();
    					var dRCP = dateRCP.getFullYear();					
    					var age = Math.Round(dRCP-dN);
    					var ct1;
    					var ct2;
    					var ct3;
    					var p;
    					var c;			
    					p=document.calcul.poids.value;
    					c=document.calcul.creatinine.value;	
    					ct1=140;
    					ct2=1.03;
    					ct3=1.23;							
    					var clair;
    					if (sexe=="F")
    					{
    						clair=Math.Round((((ct1-age)*p)/c)*ct2);
    					}
    					else
    					{
    						clair=Math.Round((((ct1-age)*p)/c)*ct3);
    					}
    					document.calcul.clairance.value=clair
    ;					
    				}
    				--></script> 			
    	</head>
     
    <body><!--corps de la page html-->
     
    <form name='calcul' method="post" action="verifSuiteD.php5" >	
     
    <b>Poids&nbsp&nbsp</b> <input type=text name="poids" size=5   value="<?php print $_SESSION['poids'];?>">Kg&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp			
    <b>Créatinine :&nbsp&nbsp</b> <input type="text" name="creatinine"  onBlur="calculClairance()" size=3 maxlength='3' value="<?php print $_SESSION['creatinine'];?>">&micromol/l
    <b>Clairance :&nbsp&nbsp</b> <input type="text" name="clairance" size=5 maxlength='5' readonly=1 value="<?php print $_SESSION['clairance'];?>">ml/mn
    9a m'etonne que la fonction Math() ne soit pas valable et qu'il faut utilisé Math.Round()!!!

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    Je n'arrive pas à voir le probleme et compte beaucoup sur vos conseils. Merci!

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    C'est bon, au fait il fallait mettre
    var date=new Date('<?php .....?>'); pour les dates, parce que j'ai laissé en String et donc aussi calculer directement dateRCP-dateN.....et ne pas utiliser la fonction Math() ni Math.Round().

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP-JS] Javascript ou PHP
    Par lynchmaniac dans le forum Langage
    Réponses: 7
    Dernier message: 27/10/2005, 10h10
  2. [PHP-JS] Javascript et PHP: passer une valeur en paramètres
    Par anutka dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/10/2005, 12h05
  3. Recuperer un tableau php dans javascript
    Par 17mounir dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/08/2005, 09h07
  4. [PHP-JS] passage de variable php a javascript
    Par limpins dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/07/2005, 11h54
  5. [PHP-JS] Mettre du php dans javascript
    Par fisico dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 05/11/2004, 16h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo