Aide à une débutante en "php"
Résolu/Fermé
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
-
4 févr. 2010 à 14:26
vega32 Messages postés 15 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 9 octobre 2013 - 19 févr. 2010 à 11:50
vega32 Messages postés 15 Date d'inscription jeudi 4 février 2010 Statut Membre Dernière intervention 9 octobre 2013 - 19 févr. 2010 à 11:50
A voir également:
- Aide à une débutante en "php"
- Easy php - Télécharger - Divers Web & Internet
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Href php ✓ - Forum PHP
- Bouton php - Forum PHP
- Convertir php en pdf ✓ - Forum PDF
19 réponses
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
4 févr. 2010 à 14:37
4 févr. 2010 à 14:37
salut a toi,
Si tu reçoit le mail c'est que certaine chose doivent marcher, malheureusement, n'étant pas extralucide, je ne peux voir ton code si tu ne le montre pas donc je peux pas t'aider xD
a bientot
Si tu reçoit le mail c'est que certaine chose doivent marcher, malheureusement, n'étant pas extralucide, je ne peux voir ton code si tu ne le montre pas donc je peux pas t'aider xD
a bientot
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 14:43
4 févr. 2010 à 14:43
Voilà le form: <form method="post" action="formmail.php"><input
name="subject" value="formmail" type="hidden">
<table>
<tbody>
<tr>
<td>Votre Nom:</td>
<td><input name="realname" size="30"
type="text"></td>
</tr>
<tr>
<td>Votre Email:</td>
<td><input name="email" size="30"
type="text"></td>
</tr>
<tr>
<td>Votre Telephone:</td>
<td><input name="telephone" size="30"
type="text"></td>
</tr>
<tr>
<td>modele bmw:</td>
<td><input name="modele" size="30"
type="text"></td>
</tr>
<tr>
<td>Sujet:</td>
<td><input name="title" size="30"
type="text"></td>
</tr>
<tr>
<td colspan="2">votre message:<br>
<textarea cols="50" rows="6"
name="comments"></textarea>
</td>
</tr>
</tbody>
</table>
<br>
<input value="Envoyer" type="submit"> -
<input value="Annuler" type="reset"></form>
et voilà le formmail en php :
<?php
$TO = "cedricbernard@stationbm95.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://stationbm95.fr");
?>
Merci si vous pouvez m'aider de manière à ce que je comprenne.
vega32
name="subject" value="formmail" type="hidden">
<table>
<tbody>
<tr>
<td>Votre Nom:</td>
<td><input name="realname" size="30"
type="text"></td>
</tr>
<tr>
<td>Votre Email:</td>
<td><input name="email" size="30"
type="text"></td>
</tr>
<tr>
<td>Votre Telephone:</td>
<td><input name="telephone" size="30"
type="text"></td>
</tr>
<tr>
<td>modele bmw:</td>
<td><input name="modele" size="30"
type="text"></td>
</tr>
<tr>
<td>Sujet:</td>
<td><input name="title" size="30"
type="text"></td>
</tr>
<tr>
<td colspan="2">votre message:<br>
<textarea cols="50" rows="6"
name="comments"></textarea>
</td>
</tr>
</tbody>
</table>
<br>
<input value="Envoyer" type="submit"> -
<input value="Annuler" type="reset"></form>
et voilà le formmail en php :
<?php
$TO = "cedricbernard@stationbm95.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://stationbm95.fr");
?>
Merci si vous pouvez m'aider de manière à ce que je comprenne.
vega32
JeepyLeChat
Messages postés
59
Date d'inscription
mercredi 16 janvier 2008
Statut
Membre
Dernière intervention
27 février 2012
1
4 févr. 2010 à 14:47
4 févr. 2010 à 14:47
Salut,
Comme Camuke dit, sans ton code, c'est un peu difficile d'être précis sur le pourquoi. Cependant, il est possible qu'il y ait une erreur de syntaxe dans ton update sur WampServer, (virgule manquante, etc). Souvent, lorsque quelque chose échoue comme ça, c'est à cause d'une erreur stupide comme ça. C'était souvent ça pour moi. ^^
J'aimerais voir en particulier ce que tu fais pour simuler un message provenant de l'extérieur.
Allez, va poster du code! =)
JeepyLeChat
/*edit*/
Eh ben, tu as postée ton code pendant que je tapais ça. Haha.
Comme Camuke dit, sans ton code, c'est un peu difficile d'être précis sur le pourquoi. Cependant, il est possible qu'il y ait une erreur de syntaxe dans ton update sur WampServer, (virgule manquante, etc). Souvent, lorsque quelque chose échoue comme ça, c'est à cause d'une erreur stupide comme ça. C'était souvent ça pour moi. ^^
J'aimerais voir en particulier ce que tu fais pour simuler un message provenant de l'extérieur.
Allez, va poster du code! =)
JeepyLeChat
/*edit*/
Eh ben, tu as postée ton code pendant que je tapais ça. Haha.
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
4 févr. 2010 à 14:57
4 févr. 2010 à 14:57
Essaye sa:
$TO = "cedricbernard@stationbm95.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val<br>";
}
mail($TO, $_POST['title'], $message, $h);
$TO = "cedricbernard@stationbm95.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val<br>";
}
mail($TO, $_POST['title'], $message, $h);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 15:11
4 févr. 2010 à 15:11
Merci d'abord pour l'aide. Alors j'ai essayé, maintenant je reçois le mail mais avec ça dans le texte :
subject : formmail<br>realname : <br>email : <br>telephone : <br>modele : <br>title : <br>comments : esai<br>
J'ai du oublié quelquechose en route, des espaces en trop en moins ???? et ce "php" me prend la tête, je n'y comprends rien, c'est vraiment pas parlant contrairement au "html".
Vega32
subject : formmail<br>realname : <br>email : <br>telephone : <br>modele : <br>title : <br>comments : esai<br>
J'ai du oublié quelquechose en route, des espaces en trop en moins ???? et ce "php" me prend la tête, je n'y comprends rien, c'est vraiment pas parlant contrairement au "html".
Vega32
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 15:21
4 févr. 2010 à 15:21
j'ai mis ça :
<?php
$TO = "cedricbernard@stationbm95.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://stationbm95.fr");
?>
et voilà ça marche, mais sur le mail je reçois ça :
subject : formmail
realname :
email : mtb32@laposte.net
telephone :
modele :
title :
comments : essai
J'ai déjà fait des progrès grâce à vous !!!! J'espère que je vais y arriver :)
<?php
$TO = "cedricbernard@stationbm95.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://stationbm95.fr");
?>
et voilà ça marche, mais sur le mail je reçois ça :
subject : formmail
realname :
email : mtb32@laposte.net
telephone :
modele :
title :
comments : essai
J'ai déjà fait des progrès grâce à vous !!!! J'espère que je vais y arriver :)
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
4 févr. 2010 à 15:39
4 févr. 2010 à 15:39
C'est sur que sa affiche se genre de chose, dans ton code ton message est crée par une boucle qui met à la suite dans le message le nom de la variable et sa valeur.
Si tu veux une mini présentation, le code ressemble plus a sa:
Si tu veux une mini présentation, le code ressemble plus a sa:
<?php if(isset($_POST['email'])) { $TO = "cedricbernard@stationbm95.fr"; $h = "From: " . $TO; $message_html='<html> <head> <title>Titre</title> </head> <body> Nom : '.$_POST['realname'].' <br> Email : '.$_POST['email'].' <br> Telephone : '.$_POST['telephone'].' <br> modele bmw : '.$_POST['modele'].' <br> sujet : '.$_POST['title"'].' <br> message : '.$_POST['comments'].' <br> </body> </html>'; $message = ""; $message .= 'Content-Type: text/html; charset="iso-8859-1"'."\n"; $message .= 'Content-Transfer-Encoding: 8bit'."\n\n"; $message .= $message_html."\n\n"; mail($TO, $_POST['title'], $message, $h); } ?>
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 15:51
4 févr. 2010 à 15:51
j'ai peur de tester ton nouveau code et de ne plus y arriver car là ça y est grâce à toi voilà ce que j'ai reçu après l'envoi du formulaire :
sujet :
Nom : BERNARD
email : mtb32@laposte.net
telephone : 0000000000
modele_bmw : serie 5 tant qu'à faire !!!
message : Je fais un essai et génial on dirait que ça marche maintenant je voudrais que l'expéditeur retombe sur une page de remerciement.
Je n'avais rien rempli dans la case "sujet" donc normal qu'il n'y ait rien.
et comme je le dis dans le message, comment faire pour rediriger le visiteur sur une page du style "merci message envoyé, nous vous répondrons dès que possible" ???
Est-ce que c'est simple ??
Merci
sujet :
Nom : BERNARD
email : mtb32@laposte.net
telephone : 0000000000
modele_bmw : serie 5 tant qu'à faire !!!
message : Je fais un essai et génial on dirait que ça marche maintenant je voudrais que l'expéditeur retombe sur une page de remerciement.
Je n'avais rien rempli dans la case "sujet" donc normal qu'il n'y ait rien.
et comme je le dis dans le message, comment faire pour rediriger le visiteur sur une page du style "merci message envoyé, nous vous répondrons dès que possible" ???
Est-ce que c'est simple ??
Merci
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
4 févr. 2010 à 15:56
4 févr. 2010 à 15:56
a la fin de ton code php tu met sa:
header('Location: mapage.php');
header('Location: mapage.php');
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 16:07
4 févr. 2010 à 16:07
juste ça ? en remplaçant "mapage.php" par "la mienne.php" ??? alors là je comprends pas comment le visiteur va être redirigé vers une page de remerciement ?? tu peux m'expliquer stp, merci. Vega
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
4 févr. 2010 à 16:13
4 févr. 2010 à 16:13
Oui tu met le nom de la page que tu veux.
Comment sa marche, aucune idée....
Comme dans beaucoup de langage, PHP possède des fonctions prédéfinit que les humbles codeur comme nous peuvent utiliser, le code derrière je le connais pas et très honnêtement, je pense que, comme tout le monde , je m''en moque complètement.
En français la fonction headers permet de dire a ton navigateur internet d'aller voir la page indiqué.
Comment sa marche, aucune idée....
Comme dans beaucoup de langage, PHP possède des fonctions prédéfinit que les humbles codeur comme nous peuvent utiliser, le code derrière je le connais pas et très honnêtement, je pense que, comme tout le monde , je m''en moque complètement.
En français la fonction headers permet de dire a ton navigateur internet d'aller voir la page indiqué.
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 16:32
4 févr. 2010 à 16:32
bon ben je vais essayer et je te dirai si ça marche, mais d'abord une pause et puis je m'y remets :):)
Vega
Vega
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
4 févr. 2010 à 19:08
4 févr. 2010 à 19:08
merci merci merci, ça marche !!!! oh, y'aura probablement des bugs et faut que j'améliore mais là déjà c'est super !!!!
Bonne soirée à tous
vega
Bonne soirée à tous
vega
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
5 févr. 2010 à 14:22
5 févr. 2010 à 14:22
Bonjour,
c'est re-moi. Mon formulaire fonctionne, merci encore à Camuke . Ce formulaire est peut être pas très "pro" mais bon dans l'immediat ça marche. Maintenant je voudrais savoir ce que je peux rajouter en "javascript" ou en "php" pour obliger le visiteur à remplir certains champs comme : le nom, l'email et le n° de telephone avant de valider.
Merci pour votre aide
Vega
c'est re-moi. Mon formulaire fonctionne, merci encore à Camuke . Ce formulaire est peut être pas très "pro" mais bon dans l'immediat ça marche. Maintenant je voudrais savoir ce que je peux rajouter en "javascript" ou en "php" pour obliger le visiteur à remplir certains champs comme : le nom, l'email et le n° de telephone avant de valider.
Merci pour votre aide
Vega
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
5 févr. 2010 à 15:24
5 févr. 2010 à 15:24
l'ideal c'est les 2!!
D'abord en javascript:
Voila, a intégrer et terminer pour ton formulaires.
D'abord en javascript:
le script : <script type="text/javascript"> function valider(){ if(document.contact.email.value != "") { // les données sont ok, on peut envoyer le formulaire return true; } else { // sinon on affiche un message alert("Saisissez le prénom"); // et on indique de ne pas envoyer le formulaire return false; } } </script> le formulaire : <form method="post" action="formmail.php" name="contact" onsubmit="return valider()"> //Liste des champs </form> Le javascript est superbe pour sa car tu envoie pas le formulaire le tant que tout est pas remplit mais l'utilisateur peut le désactive dans son navigateur donc une petite vérification coté serveur (php) est nécessaire. la réponse est déjà en partie écrite d'ailleurs car tu as dans le code: if(isset($_POST['email'])): cela test si tu recoit le champs email, tu as juste a rajouter les autres, du genre: <?php if(isset($_POST['email']) && isset($_POST['nom'])) { //Tout est bien remplit }else{ // Un petit message pour avertir } ?>
Voila, a intégrer et terminer pour ton formulaires.
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
5 févr. 2010 à 16:26
5 févr. 2010 à 16:26
bonjour et merci pour la rapide réponse,
on va me prendre pour une truffe mais je ne sais pas où mettre le javascript dans ma page d'accueil, je viens d'essayer ainsi que le formmail modifié et là ça ne marche plus du tout. Je croyais que ça allait être simple mais là je bute et puis je te renvoie mon form car c'est peut être à cause de la redirection vers la page de remerciement ??? merci d'avance
<?php
$TO = "xxxxx@xxxx.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://xxxx.fr/merci.html");
// Rediriger vers la page de remerciement
header("Location:merci.html");
?>
on va me prendre pour une truffe mais je ne sais pas où mettre le javascript dans ma page d'accueil, je viens d'essayer ainsi que le formmail modifié et là ça ne marche plus du tout. Je croyais que ça allait être simple mais là je bute et puis je te renvoie mon form car c'est peut être à cause de la redirection vers la page de remerciement ??? merci d'avance
<?php
$TO = "xxxxx@xxxx.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://xxxx.fr/merci.html");
// Rediriger vers la page de remerciement
header("Location:merci.html");
?>
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
8 févr. 2010 à 10:13
8 févr. 2010 à 10:13
Je reprend le tout avec le code que j'ai a disposition:
Dans la page de ton formulaire tu doit avoir :
Et dans ton fichier formmail.php:
Dans la page de ton formulaire tu doit avoir :
<script type="text/javascript"> function valider(){ if(document.contact.email.value != "" && document.contact.realname.value != "" && document.contact.telephone.value != "") { // les données sont ok, on peut envoyer le formulaire return true; } else { // sinon on affiche un message alert("Merci de remplir tout les champs obligatoires"); // et on indique de ne pas envoyer le formulaire return false; } } </script> <form method="post" action="formmail.php" name="contact" onsubmit="return valider()"> <input name="subject" value="formmail" type="hidden"> <table> <tbody> <tr> <td>Votre Nom:</td> <td><input name="realname" size="30" type="text"></td> </tr> <tr> <td>Votre Email:</td> <td><input name="email" size="30" type="text"></td> </tr> <tr> <td>Votre Telephone:</td> <td><input name="telephone" size="30" type="text"></td> </tr> <tr> <td>modele bmw:</td> <td><input name="modele" size="30" type="text"></td> </tr> <tr> <td>Sujet:</td> <td><input name="title" size="30" type="text"></td> </tr> <tr> <td colspan="2">votre message:<br> <textarea cols="50" rows="6" name="comments"></textarea></td> </tr> </tbody> </table> <br> <input value="Envoyer" type="submit"> - <input value="Annuler" type="reset"> </form>
Et dans ton fichier formmail.php:
<?php if(isset($_POST['email']) && isset($_POST['telephone']) && isset($_POST['realname'])) { $TO = "xxxxx@xxxx.fr"; $h = "From: " . $TO; while (list($key, $val) = each($_POST)) { $message .= "$key : $val\n"; } mail($TO, $subject, $message, $h); header("Location:merci.html"); }else{ echo 'Tout les champs n\'ont pas ete correctement remplit'; } ?>
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
8 févr. 2010 à 11:50
8 févr. 2010 à 11:50
Bonjour Camuke et encore un grand merci car je viens de tester en local et ça marche :):):) Maintenant il me faut l'accord du grand chef du site concerné pour l'installer mais en attendant j'ai 2 autres sites où j'ai bien l'intention de le faire. Je pense que toutes tes infos seront utiles à d'autres, bonne continuation sur "ccm" et peut être à bientôt si jamais j'avais encore besoin de ton aide dans ce domaine ?
Vega
Vega
vega32
Messages postés
15
Date d'inscription
jeudi 4 février 2010
Statut
Membre
Dernière intervention
9 octobre 2013
19 févr. 2010 à 11:50
19 févr. 2010 à 11:50
Bonjour à tous,
Encore une petite question : mon formulaire fonctionne très bien mais quand je fais rentrer les mails des expéditeurs je ne peux cliquer sur répondre car je "me" réponds, je suis obligée de cliquer sur l'adresse mail de l'expéditeur pour lui répondre, est-ce normal ? y-a-il une solution et, avez vous compris ma question ?
d'avance merci
Vega
Encore une petite question : mon formulaire fonctionne très bien mais quand je fais rentrer les mails des expéditeurs je ne peux cliquer sur répondre car je "me" réponds, je suis obligée de cliquer sur l'adresse mail de l'expéditeur pour lui répondre, est-ce normal ? y-a-il une solution et, avez vous compris ma question ?
d'avance merci
Vega