Formulaire de contact

Fermé
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 - 1 janv. 2013 à 12:38
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 - 2 janv. 2013 à 13:44
Bonjour et bonne année a tous,

J utilise un templates html5

J ai un problème avec l envoi du formulaire de contact si je clique sur envoyer rien ne se passe j ai paramétrer le fichier php

lien du site
http://www.sos24cernaydepannage.com/test/

Merci de votre aide


14 réponses

c'est normal, dans ton action t'as rien mis --'

tu post dans le vide lol
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 13:54
merci de ta réponse mais ça par du javascript general.js
0
ah ouais j'avais zappé le fichier js en bas (le truc à pas faire quoi), les fichiers JavaScript on les met en haut, pas en bas --'


sinon, chez moi j'ai passé au sniffer et ça marche bien, la requête est bien envoyé =)

regarde du côté de ton php

je te met le résultat du sniff ....

------------------------------------
POST /test/send_form_email.php HTTP/1.1
Host: www.sos24cernaydepannage.com
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:17.0) Gecko/20100101 Firefox/17.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: http://www.sos24cernaydepannage.com/test/
Content-Length: 43
Cookie: 90plan=R3276217630
Pragma: no-cache
Cache-Control: no-cache

name=fghfgh&email=hfghfgh&message=fghfghfgh

HTTP/1.1 200 OK
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 14:27
ok donc je met le js a la suite des autres

ci joint mon php mais je ne vois pas ce qui peux etre faux

<?php

$send_email_to = "mon mail@domaine.fr";
$email_subject = "Message bla bla";

function send_email($name,$email,$email_message)
{
global $send_email_to;
global $email_subject;

$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
$headers .= "From: ".$email. "\r\n";

$message = "<strong>Email = </strong>".$email."<br>";
$message .= "<strong>Nom = </strong>".$name."<br>";
$message .= "<strong>Message = </strong>".$email_message."<br>";
@mail($send_email_to, $email_subject, $message,$headers);
return true;
}

function validate($name,$email,$message)
{
$return_array = array();
$return_array['success'] = '1';
$return_array['name_msg'] = '';
$return_array['email_msg'] = '';
$return_array['message_msg'] = '';

if($email == '')
{
$return_array['success'] = '0';
$return_array['email_msg'] = 'email is required';
}
else
{
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email)) {
$return_array['success'] = '0';
$return_array['email_msg'] = 'enter valid email.';
}
}

if($name == '')
{
$return_array['success'] = '0';
$return_array['name_msg'] = 'name is required';
}
else
{
$string_exp = "/^[A-Za-z .'-]+$/";
if (!preg_match($string_exp, $name)) {
$return_array['success'] = '0';
$return_array['name_msg'] = 'enter valid name.';
}
}


if($message == '')
{
$return_array['success'] = '0';
$return_array['message_msg'] = 'message is required';
}
else
{
if (strlen($message) < 2) {
$return_array['success'] = '0';
$return_array['message_msg'] = 'enter valid message.';
}
}
return $return_array;
}

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];


$return_array = validate($name,$email,$message);
if($return_array['success'] == '1')
{
send_email($name,$email,$message);
}

header('Content-type: text/json');
echo json_encode($return_array);
die();

?>

merci de ton aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tu peux me faire un print_r($return_array); juste après l'appel de la fonction validate(), juste avant la condition success==1

renvoies moi le résultat =)
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 14:49
je vient de rajouter le print mais le probleme est que l orsque je clique sur envoyé rien ne se passe
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 14:50
si je vais sur la page php

il me donne ceci

Array ( [success] => 0 [name_msg] => name is required [email_msg] => email is required [message_msg] => message is required )
Warning: Cannot modify header information - headers already sent by (output started at /homez.232/gautomob/sos/test/send_form_email.php:82) in /homez.232/gautomob/sos/test/send_form_email.php on line 88

Fatal error: Call to undefined function: json_encode() in /homez.232/gautomob/sos/test/send_form_email.php on line 89
0
1 : json_encode() n'est pas reconnu, c'est normal si tu n'as pas PECL json

essayes de faire un php -i | grep json pour voir si c'est activé, et si t'as un accès ssh

2 : fait moi un print_r() avec des données --' lool
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 19:37
comment je dois faire un php -i | grep json ?

mais le souci est que je ne peux pas cliquer sur envoyer le formulaire rien ne se passe prq?

merci de ton aide
0
tu le fait en shell via ton accès ssh, si t'en a un, ou sinon tu fait un phpinfo(), au pire si t'as rien d'autres =)

fait moi un print_r() en faisant comme si tu envoyais un mail (si ça fonctionne, c'est ton php qui merde)...
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 19:56
lien du phpinfo

http://www.sos24cernaydepannage.com/info.php

je ne vois pas ou je dois mettre le print_r?
0
je ne vois pas de json dans le phpinfo, il ne doit pas être activé

le print_r() tu le met après le $return_array = validate($name,$email,$message);
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 janv. 2013 à 21:40
ok dons je dois l activer?

cci joint le print rajoute

dit moi si c est bon

<?php

// EDIT THE 2 LINES BELOW AS REQUIRED

$send_email_to = "mon mail";
$email_subject = "blabla";

function send_email($name,$email,$email_message)
{
global $send_email_to;
global $email_subject;

$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
$headers .= "From: ".$email. "\r\n";

$message = "<strong>Email = </strong>".$email."<br>";
$message .= "<strong>Nom = </strong>".$name."<br>";
$message .= "<strong>Message = </strong>".$email_message."<br>";
@mail($send_email_to, $email_subject, $message,$headers);
return true;
}

function validate($name,$email,$message)
{
$return_array = array();
$return_array['success'] = '1';
$return_array['name_msg'] = '';
$return_array['email_msg'] = '';
$return_array['message_msg'] = '';

if($email == '')
{
$return_array['success'] = '0';
$return_array['email_msg'] = 'email is required';
}
else
{
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email)) {
$return_array['success'] = '0';
$return_array['email_msg'] = 'enter valid email.';
}
}

if($name == '')
{
$return_array['success'] = '0';
$return_array['name_msg'] = 'name is required';
}
else
{
$string_exp = "/^[A-Za-z .'-]+$/";
if (!preg_match($string_exp, $name)) {
$return_array['success'] = '0';
$return_array['name_msg'] = 'enter valid name.';
}
}


if($message == '')
{
$return_array['success'] = '0';
$return_array['message_msg'] = 'message is required';
}
else
{
if (strlen($message) < 2) {
$return_array['success'] = '0';
$return_array['message_msg'] = 'enter valid message.';
}
}
return $return_array;
}

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];


$return_array = validate($name,$email,$message);
print_r($return_array);
if($return_array['success'] == '1')
{
send_email($name,$email,$message);
}

header('Content-type: text/json');
echo json_encode($return_array);
die();

?>


par contre comment je fais pour regarder si je clique sur envoyer et rien ne se passe?

Merci
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
2 janv. 2013 à 13:44
j ai activer php5 et ca fonctionne
0