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 <=> javascript


Sujet :

JavaScript

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut php <=> javascript
    comment appler une fonction javascript dans un script php ?
    j'ai essayer avec un echo mais ca ne marche pas !!

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par CROSS
    j'ai essayer avec un echo mais ca ne marche pas !!
    un peu juste comme description.
    Peux-tu donner le code que tu as testé, qu'on puisse en partir pour t'aider ?

    A+

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    voici le code en question il est decomposer en plusieur fichier le premier sert juste a la mise en page et contien le code en javascript:

    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
    82
    83
    84
    85
    86
    87
    88
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Choisir sa config</title>
    <?
    require_once'ajax.php'; 
    connect();
    ?>
    <script type="text/javascript" language="javascript">
    function calcule() {
    	ram_prix = document.getElementById('ram').value;
     
    	ecran_prix = document.getElementById('ecran').value;
    	ecran2_prix = document.getElementById('ecran2').value;
    	cson_prix = document.getElementById('cson').value;
     
    	var le_total=0;
    	le_total = parseInt(ram_prix,10)+ parseInt(ecran_prix,10)+ parseInt(ecran2_prix,10)+parseInt(cson_prix,10);
    	document.getElementById('le_total').innerHTML = (isNaN(total))?"0":total;
    }
    </script>
     
    	</head>
     
    	<body>
    	<?php
            echo "<form id='form' method='post' action='test2.php' >
    
                            <table border='1'>
                              <tr>
                              <td rowspan ='13' width='40%'><img src='EC448913be5096e.jpg' /></td>
                                  <td width='3000'></td>
                              </tr>
                              <tr>
                                <td><strong>Type</strong></td>
                                    <td><strong>Produit</strong></td>
                                <td><strong>Prix</strong></td>
                                    <td><strong>Description</strong></td>
                              </tr>
                              <tr>
                            <td>Ram </td>
                            <td>";
                                    include 'ram.php';
                                    echo '</td>
                              </tr>
                              <tr>
                                <td>Ecran</td>
                                    <td>';
                                    include 'ecran.php';
                                    echo'</td>
                              </tr>
                              <tr>
                                <td>Ecran2</td>
                                    <td>';
                                    include 'ecran2.php';
                                    echo "</td>
                              </tr>
                              <tr>
                                <td>Carte Son</td>
                                    <td>";
                                    include 'cson.php';
                                    echo "</td>
                              </tr>
                              <tr>
                                <td>&nbsp;</td>
                                <td>&nbsp;</td>
                                <td>&nbsp;</td>
                                    <td>&nbsp;</td>
                              </tr>
                              <tr>
                                <td><strong>total</strong></td>
                                    <td></td>
                                    <td id='total'>0</td>
                                <td></td>
                              </tr>
                              <tr>
                                <td>&nbsp;</td>
                                <td></td>
                                <td></td>
                            <td><input type='submit' name='Submit' value='prendre en compte les modifications' /></td>
                              </tr>
                            </table>
                    </form>";
                    ?>
    	</body>
    </html>
    le deuxieme contient le liste deroulante ainsi que l'appel de la fonciton javascript qui me permet de de faire la somme total(mais ca ne marche pas )

    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
     
    <?php
     
     
    ////////////////////////////////////////////////////////////////
    //declaration des variables 
    ////////////////////////////////////////////////////////////////
    //decalration des differentes ram
    $var='2 giga';
    $var1='3 giga';
    $var2='4 giga';
     
    // on crée la requête SQL
    $table = 'conf_ram';
    $sql = "SELECT * FROM $table WHERE nom='$var'";
    // on envoie la requête
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
     
     
    	// on fait une boucle qui va faire un tour pour chaque enregistrement
    while($data = mysql_fetch_assoc($req))
        {	
     
        // on affiche les informations de l'enregistrement en cours
        	echo '<form method="post" action="test2.php">';
        	echo '<select name="dd" size="1" onChange="ram.value=('.def($var,$table).'); calcule();">
    			  <option  value="0"' ;
    		if(!isset($_POST['dd']) || $_POST['dd']==0  ){echo 'selected';}
    		echo '> '.$var. '</option>;
    		  	  <option  value="1"';
    		if(@$_POST['dd']==1){echo 'selected';  }	  
    		echo '>' .$var1. '</option>;
              	  <option  value="2"' ;
    	 	if(@$_POST['dd']==2){echo 'selected'; }
    		echo '>' .$var2. '</option>;';             
     
    		    }
     
     
    	echo	'<td><input type="text" id="ram" value="';
    	require_once 'ajax.php';
    	if(!isset($_POST['dd']) || $_POST['dd'] == 0){
    		prix($var,$table);
    		echo	';calcule();" disabled="disabled" /></td>';
    		echo 	'<td>';
    		desc($var,$table);
     
    	}
    	if(@$_POST['dd'] == 1){
    		prix($var1,$table);
    		echo	';calcule();" disabled="disabled" /></td>';
    		echo 	'<td>';
    		desc($var1,$table);
    	}
    	if(@$_POST['dd'] == 2){
    		prix($var2,$table);
    		echo	';calcule();" disabled="disabled" /></td>';
    		echo 	'<td>';
    		desc($var2,$table);
     
    	}
    	echo '</td>';
     
    ?>

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 108
    Points : 109
    Points
    109
    Par défaut
    Pour appeler une fontion, tu fais :
    [CODE]echo "<script>maFonction()</script>"[CODE]
    où maFonction() est ta fonction ;-)

  5. #5
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    heu sniff ca marche pas !!! :-( j'ai essayer ta solution je l'ai meme mis dans le onchange en haut dans la declaration du select et ca ne change rien

    Ce que je ne comprends pas ce que je viens de mettre un alerte et la chaque fois que je clik il m'affiche bien le message !!! quelqu'un aurait une astuce

  6. #6
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    je pense savoir d'ou ca vient mais je n'arrive pas a resoudre le pb

    l'erreur vient de mon onchange
    le voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<select name="dd" size="1" onChange=\'al(); ram.value=('.def($var,$table).');calcule();\'>
    c'est a partir d'ici que l'alert ne fonctionne plus !!!

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 90
    Points : 50
    Points
    50
    Par défaut
    sinon, rien qu'en survolant ton text, j'ai vu que tu métais plein de @.

    a éviter absolument!!!!!!!
    (sauf lors de l'ouverture d'un flux je crois)

    Cela ralentit beaucoup beaucoup beaucoup l'execution du script.

    Tu as la fonction isset(), sert toi en

  8. #8
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    yep, je ne savais que le @ ralentissait le script ceux ci dit j'avais utiliser le @ mais aussi le isset. je les laissé juste par precautions ceci dit ils n'ont plus lieux d'etre donc je les ai retiré sur tes conseils. Sinon toujours rien

  9. #9
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    j'ai du nouveau en trifouillant le cade j'en suis arriver a la conclusion suivante.

    le probleme ce situe dans mon onChange et plus particuliemrement dans la focntion calcul

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function calcule() {
    	ram_prix = document.getElementById('ram').value;
    	ecran_prix = document.getElementById('ecran').value;
    	ecran2_prix = document.getElementById('ecran2').value;
    	cson_prix = document.getElementById('cson').value;
    	al('ram_prix');	
    	le_total = parseInt(ram_prix,10)+ parseInt(ecran_prix,10)+ parseInt(ecran2_prix,10)+parseInt(cson_prix,10);
    	document.getElementById('le_total').innerHTML = (isNaN(total))?"0":total;
    }
    (al() est ma fonction d'affichage) si je place al() apres total et que je lui demande d'afficher total rien ne se passe mais si je le laisse a la place cidessus la je vois bien ram_prix,ecran_prix ....

  10. #10
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Les copier/coller nécessitent quelques adaptations
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    le_total = parseInt(ram_prix,10)+ parseInt(ecran_prix,10)+ parseInt(ecran2_prix,10)+parseInt(cson_prix,10);
    document.getElementById('le_total').innerHTML = (isNaN(total))?"0":le_total;


    A+

  11. #11
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    yop merci sinon j'ai un probleme maintenant ce qu'il me mets pas directement le total il faut que je choisit un autre champs pour que le resultat apparaissent


    en gros pour simplifier:
    ce que j'ai ce que je devrait avoir
    champs total champs total
    4 giga 0 4 giga 60
    2 giga 60 2 giga 20
    3 giga 20 3 giga 40


    quelqu'un aurait une idée?

  12. #12
    Membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    65
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    j'ai essayer ca mais ca succes ce la ne m'affiche meme plus l'addition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<select name="dd" size="1" onChange="ram.value=('.def($var,$table).'*this.value);calcule();"\>

  13. #13
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par CROSS
    j'ai essayer ca mais ca succes ce la ne m'affiche meme plus l'addition
    Il vaudrait mieux revenir à l'étape précédente ...

    Sinon, pas bien compris ton décalage, mais essaye en ajoutant ton calcul aussi sur onmouseup et onkeyup (en cas de sélection au clavier) ...


Discussions similaires

  1. Appel fonction php dans code javascript
    Par licorne dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 05/03/2008, 10h55
  2. [PHP-JS] lien javascript vers php
    Par guttts dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/08/2005, 23h00
  3. [PHP-JS] variable php dans du javascript ?????
    Par lipczynski dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 18/08/2005, 14h26
  4. [PHP-JS] Execution d'un script php dans du javascript
    Par Anduriel dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/06/2005, 20h41
  5. [PHP-JS] var javaScript avec test php
    Par lepierre dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/12/2004, 12h58

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