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 :

Appel fichier PHP depuis page HTML


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Appel fichier PHP depuis page HTML
    Bonjour à tous,

    Et avant tout, un grand merci pour l'existence de ce fofo, qui m'a déjà permis de bien progresser dans le développement de mon site web.

    Je travaille avec Kompozer, et sous mozilla firefox, (et aussi le bloc-note pour le php )

    Voici mon soucis :
    J'ai une page HTML, faisant afficher un formulaire de saisie pour envoyer ensuite un mail automatiquement, quand on appuie sur le bouton ENVOYER.

    Voici le code de la page HTML :

    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
    89
    90
    91
    92
    93
    <html>
    <head>
      <meta http-equiv="Content-Type"
     content="text/html; charset=utf-8">
      <title>Mon formulaire.</title>
      <script type="text/javascript" language="Javascript">
    <!--
    
    function verification_contact()
    {alert("Passage dans Verification_contact");
    if(document.formulaire.nom.value == "") {
    alert("Veuillez entrer votre Nom, svp");
    document.formulaire.nom.focus();
    return false;}
    if(document.formulaire.email.value == "") {
    alert("Veuillez entrer votre adresse electronique, svp");
    document.formulaire.email.focus();
    return false;
    }
    if(document.formulaire.email.value.indexOf('@') == -1) {
    alert("Le format de l'adresse electronique n'est pas valide, verifiez la svp");
    document.formulaire.email.focus();
    return false;
    }
    if(document.formulaire.texte.value == "") {
    alert("Veuillez entrer le texte de votre message, svp");
    document.formulaire.texte.focus();
    return false;
    }
    }
    //-->
      </script>
    </head>
    <body>
    
    <form name="formulaire" method="POST"
     action="traitement_contact.php"
     onsubmit="return verification_contact()">
      <table>
        <tbody>
          <tr>
            <td></td>
            <th>Formulaire de contact</th>
          </tr>
          <tr>
            <td></td>
            <td>Votre nom : </td>
            <td></td>
            <td><input name="nom" size="50"
     type="text"></td>
          </tr>
          <tr>
            <td></td>
            <td>Votre prénom : </td>
            <td></td>
            <td><input name="prenom" size="50"
     type="text"></td>
          </tr>
          <tr>
            <td></td>
            <td>Votre email</td>
            <td></td>
            <td><input name="email" size="50"
     type="text"></td>
          </tr>
          <tr>
            <td></td>
            <td>Téléphone : </td>
            <td></td>
            <td><input name="telephone" size="50"
     type="text"></td>
          </tr>
          <tr>
            <td></td>
            <td>Votre message</td>
            <td></td>
            <td><textarea name="texte" cols="50"
     rows="20"></textarea></td>
          </tr>
          <tr>
            <td></td>
            <td><input name="annuler" value="Annuler"
     type="reset"></td>
            <td></td>
            <td><input name="soumettre" value="Envoyer"
     type="submit"></td>
          </tr>
        </tbody>
      </table>
    </form>
    GIF - 8.6 ko
    </body>
    </html>
    Ensuite, quand on appuie sur le bouton ENVOYER, normalement... ça déclenche le fichier PHP (traitement_contact.php), qui est palcé dans le même repertoire que le fichier HTML, et que voici :

    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
    <?php
     
    $adresse="monmail.amoi@aol.fr";
     
    $prenom=htmlentities($_POST['prenom']);
    $nom=htmlentities($_POST['nom']);
    $email=htmlentities($_POST['email']);
    $sujet="Site arborescence";
     
    $from=htmlentities("From $_prenom $nom<$email>\r\n");
    $from.=htmlentities("Reply-To: ".$prenom." ".$nom."<".$email.">"."\n");
    $from.=htmlentities("X-priority:3\n");
     
    $texte=htmlentities("<html>");
    $texte.=htmlentities($_POST['texte']);
    $texte.=htmlentities("</html>");
     
    $from.=htmlentities("MIME-Version: 1.0\r\n");
    $from.=htmlentities("Content-Type: text/html");  
     
    if (mail($adresse, $sujet, $texte, $from))
        echo("<center><font color=green><br><br><br>
        <h2>Formulaire envoy&eacute; ! Je vous r&eacute;pondrai rapidement. Merci !</h2>
        </font><br><a href=/>Cliquez ici pour revenir &agrave; l'accueil</a></center>");
    else
        echo("<center><font color=red><br><br><br>
        <h2>Probl&egrave;me &agrave; l'envoi du mail...d&eacute;sol&eacute; nous ne pouvons actuellement traiter votre demande</h2>
        </font><br>Contactez nous plus <a href="mailto:$adresse">classiquement</a>");
     
    exit;
     
    ?>

    Le soucis est que, lorsque j'exécute la page, que je remplis le formulaire et que je valide, je me retrouve bien sur une nouvelle page web, mais le code apparait ! Comme cela :

    \r\n"); $from.=htmlentities("Reply-To: ".$prenom." ".$nom."<".$email.">"."\n"); $from.=htmlentities("X-priority:3\n"); $texte=htmlentities(""); $texte.=htmlentities($_POST['texte']); $texte.=htmlentities(""); $from.=htmlentities("MIME-Version: 1.0\r\n"); $from.=htmlentities("Content-Type: text/html"); if (mail($adresse, $sujet, $texte, $from)) echo("


    Formulaire envoyé ! Je vous répondrai rapidement. Merci !


    Cliquez ici pour revenir à l'accueil"); else echo("


    Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande


    Contactez nous plus classiquement"); exit; ?>


    Pfff.. je désespère.

    J'ai d'ailleurs essayer de faire beaucoup plus simple, dans le fichier PHP :
    Mettre uniquement un : Echo "bonjour tout le monde !";
    Même ça, ça ne marche pas. Je me retrouve avec une page blanche.

    Ai-je oublié une déclaration du fichier PHP ?
    Est-ce que Mozilla fonctionne sans astuce spéciale avec le PHP ?....

    Merci d'avance pour toutes vos interventions,

    Luc

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    As-tu installé un serveur web ?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour Sabotage,

    Ha non, je n'ai pas installé de serveur web...
    Hummm, je sens que mon problème vient de là, non ?

    ...

    Ca y est, je viens d'installer EasyPHP, le serveur est démarré, et j'ai mis mes fichiers HTML et PHP dans le répertoire de WWW de EasyPHP.
    Bon, ça ne change rien, j'ai toujours le même résultat.
    ...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Contrairement au code html qui est lu par le navigateur, le code PHP doit être traité en amont par le serveur web/php.

    Il faut donc que installes un serveur web et un serveur php.
    Je te conseille Xampp :
    http://www.apachefriends.org/fr/xampp-windows.html
    qui fait une installation clef en main de apache/php et mysql.

    Tu mets tes petits fichiers dans le repertoire htdocs.
    Tu demarres le serveur apache.
    et tu te connectes sur http//localhost/ton_fichier.php

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    YIHA HOUUUUU !!!

    Trop content ! Merci Sabotage !!

    Bon, je n'ai pas pris le meme logiciel, je t'avais devancé un peu, me suis lancé sur Easyphp.
    Ayé, enfin ! je n'ai plus cette satanée page !

    Bon, ça ne marche pas encore, mais là, c'est surement un soucis de codage, genre un guillemet qui traine...

    Parse error: parse error, unexpected T_STRING in C:\Program Files\EasyPHP 2.0b1\www\traitement_contact.php on line 30

    C'est déjà beaucoup mieux !
    Je vais debugger tranquillou cette fois, ça devrait être dans mes cordes

    Merci encore, j'ai fait un bon de géant grâce à toi !

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Attention a tes enchainements de guillemets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     echo '<center><font color=red><br><br><br>
        <h2>Probl&egrave;me &agrave; l\'envoi du mail...d&eacute;sol&eacute; nous ne pouvons actuellement traiter votre demande</h2>
        </font><br>Contactez nous plus <a href="mailto:$adresse">classiquement</a>';

Discussions similaires

  1. appeler un fichier php depuis un fichier javascript
    Par freddy000 dans le forum Langage
    Réponses: 4
    Dernier message: 07/01/2011, 11h10
  2. Appel en JS d'un fichier PHP depuis page HTML ?
    Par Ehjoe dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/08/2009, 13h22
  3. appeller une application en java .JAR depuis page html
    Par karimoscapitated dans le forum Général Java
    Réponses: 4
    Dernier message: 25/05/2009, 13h55
  4. [PHP-JS] Appeler du PHP depuis l'HTML
    Par blanchonvincent dans le forum Langage
    Réponses: 5
    Dernier message: 14/11/2007, 08h10
  5. Réponses: 8
    Dernier message: 08/02/2006, 15h16

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