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

Langage PHP Discussion :

appeler d'une fonction javascript contenu dans un fichier .js


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    153
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 153
    Points : 86
    Points
    86
    Par défaut appeler d'une fonction javascript contenu dans un fichier .js
    Bonjour.
    je me suis mit au php depuis peu et je rencontre quelques petites difficulté.
    En fait mon script php en lui même fonctionne. ( il est utiliser pour envoyer par mail un formulaire html).

    voici mon script php
    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
     
    <!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=utf-8" />
    <title>commentaires</title>
    </head>
     
    <body>
     
     
    <?
    $nom = $_POST['nom'];
    $email=$_POST['email'];
    $prenom=$_POST['prenom'];
    $commentaires=$_POST['commentaires'];
    $civilite=$_POST['choix'];
     
    $message .="nom: ".$nom."\n";
    $message .="prenom: ".$prenom."\n";//defition du corps du messge
    $message .="commentaires: ".$commentaires; 
     
    $headers = 'From: <'.$email.'>'."\n"; 
    $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; //entete et encode du message
    $headers .='Content-Transfer-Encoding: 8bit'; 
     
    print "bonjour  ";//script de bienvenue
    if ($civilite !='')// si la civilité est renseignée
    {
    print $civilite ;
    print" ";
    print $nom ;
    print" ";
    }
    	else//si elle n'est pas renseignée
    	{
    	print $nom ;
    	print" ";
    	print $prenom ;
    	print" ";
    	}
    print "  ! ";
     
    if(mail('n.scozzafave@jmontblanc.fr','remarques sur le site de juramontblanc',$message,$headers))
    //envoi du message
    {
    print "votre message a bien été envoyé";
    }
    	else//boucle pour tester si le message a bien ete envoyer
    	{
    	print"votre message n'as pas pu etre envoyé";
    	}
    ?>
    <script type="text/javascript">//utilisation du javascript pour fermer la fenetre
    window.setTimeout("window.femer1()",3000);
    </script>
    </body>
    </html>
    en fait a le fin de mon script j'aimerais faire référence a une fonction javascript qui se trouve dans un fichier .js au lieu d'utiliser la commande"window.parent.close()"


    voila merci de votre aide.

    j'ai déjà essayé en mettant la source de mon fichier dans la déclaration javascript puis en appelant directement la fonction nommé fermer1() mais çà ne marche pas.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    153
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 153
    Points : 86
    Points
    86
    Par défaut porbleme resolu
    en fait c'est bon a force de erseverance j'ai fini par trouvé.
    Il fallait mettre la reference a mon fichier .js a l'interieur de la balise head de la page html.

    puis faire un apel de fonction apres le php.
    voici mon code pour ceux que ca interesse.

    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
     
    <!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=utf-8" />
    <title>commentaires</title>
    <script type="text/javascript" src="fermerformulaire.js"></script>
    </head>
     
    <body>
     
     
    <?
    $nom = $_POST['nom'];
    $email=$_POST['email'];
    $prenom=$_POST['prenom'];
    $commentaires=$_POST['commentaires'];
    $civilite=$_POST['choix'];
     
    $message .="nom: ".$nom."\n";
    $message .="prenom: ".$prenom."\n";//defition du corps du messge
    $message .="commentaires: ".$commentaires; 
     
    $headers = 'From: <'.$email.'>'."\n"; 
    $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; //entete et encode du message
    $headers .='Content-Transfer-Encoding: 8bit'; 
     
    print "bonjour  ";//script de bienvenue
    if ($civilite !='')// si la civilité est renseignée
    {
    print $civilite ;
    print" ";
    print $nom ;
    print" ";
    }
    	else//si elle n'est pas renseignée
    	{
    	print $nom ;
    	print" ";
    	print $prenom ;
    	print" ";
    	}
    print "  ! ";
     
    if(mail('n.scozzafave@jmontblanc.fr','remarques sur le site de juramontblanc',$message,$headers))
    //envoi du message
    {
    print "votre message a bien été envoyé";
    }
    	else//boucle pour tester si le message a bien ete envoyer
    	{
    	print"votre message n'as pas pu etre envoyé";
    	}
    ?>
    <script type="text/javascript">//utilisation du javascript pour fermer la fenetre
    window.setTimeout("javascipt:fermer1()",3000);
    </script>
    </body>
    </html>

  3. #3
    Membre éclairé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Points : 862
    Points
    862
    Par défaut
    Bonjour.
    je relance cette conversation car moi, j'ai une fonction dans un fichier .js:
    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
    function verifier_couleur_champ_texte(var id_input)
    {
        alert(1);
        if(document.getElementById(id_input).value.length == 0)
        {
               document.getElementById(id_input).style.backgroundColor = #D1F0F7;
        }
        if(document.getElementById(id_input).value.length == 1)
        {
               document.getElementById(id_input).style.backgroundColor = #FCD6F1;
        }
        if(document.getElementById(id_input).value.length > 1)
        {
               document.getElementById(id_input).style.backgroundColor = #D8FDBA;
        }
    }
    et ce fichier est inclus dans la partie head de mon fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="includes/script/couleurs_text.js"></script>
    malgré tout, lorsque je fais appel à ma fonction, la console d'erreur de firefox m'indique que la fonction est introuvable.
    Cela fait la même chose si j'inclus directement ma fonction dans le head, sans passer par un fichier .js

    voici mon appel à la fonction js:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" id="nom" name="nom" class="texte_box" onKeyUp='javascript:verifier_couleur_champ_texte("nom");' value=""/>
    et je ne trouve donc pas pourquoi ma fonction ne serait pas reconnu
    merci d'avance
    doudouallemand

  4. #4
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Bonjour,
    Il eut été préférable que tu ouvres une discussion pour exposer ton problème qui selon moi n'a rien avoir avec la présente discussion.
    Tu as tout simplement un problème de syntaxe :
    1 - Enlève "var" dans les parenthèses sur la première ligne de ta fonction,
    2 - Il faut mettre tes codes couleur entre des "",
    Ce qui donne :
    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
    function verifier_couleur_champ_texte(id_input)
    {
        if(document.getElementById(id_input).value.length == 0)
        {
               document.getElementById(id_input).style.backgroundColor = "#D1F0F7";
        }
        if(document.getElementById(id_input).value.length == 1)
        {
               document.getElementById(id_input).style.backgroundColor = "#FCD6F1";
        }
        if(document.getElementById(id_input).value.length > 1)
        {
               document.getElementById(id_input).style.backgroundColor = "#D8FDBA";
        }
    }

  5. #5
    Membre éclairé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Points : 862
    Points
    862
    Par défaut
    ben, désolé, je pensais que ca correspondait
    sinon, ton code marche si j'inclus la fonction directement dans ma page mais pas si je la mets dans mon fichier externe!
    saurais-tu pourquoi stp ?
    merci

  6. #6
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    J'ai testé avec un fichier .js, pas de soucis.
    Vérifie bien le chemin ==> includes/script/couleurs_text.js

  7. #7
    Membre éclairé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Points : 862
    Points
    862
    Par défaut
    Citation Envoyé par jumano Voir le message
    J'ai testé avec un fichier .js, pas de soucis.
    Vérifie bien le chemin ==> includes/script/couleurs_text.js
    oui, en fait, ca fonctionne
    ca devait être le navigateur qui n'avait pas bien rafraichit
    merci beaucoup

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

Discussions similaires

  1. [AJAX] Appel d'une fonction javascript dans une page chargée en ajax
    Par baedal dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 17/04/2008, 18h03
  2. Réponses: 4
    Dernier message: 30/05/2007, 19h05
  3. [PHP-JS] Variable PHP comme argument dans l'appel d'une fonction Javascript
    Par The Molo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/04/2007, 10h00
  4. Réponses: 2
    Dernier message: 03/04/2006, 19h38
  5. Réponses: 4
    Dernier message: 02/06/2004, 17h35

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