Pages

Affichage des articles dont le libellé est Ajax. Afficher tous les articles
Affichage des articles dont le libellé est Ajax. Afficher tous les articles

Probleme formulaire contact en ajax sujet

mardi 8 avril 2014




Bonjour a tous,
j'ai fait un formulaire en php avec de l'ajax et quand je ne mais pas l'ajax il m'envoie bien dans la bdd et par mail et quand je mais l'ajax sa ne marche pas. Voci le code :
(javascript avec ajax)
$(document).ready(function(){
$('#success').hide();
$('#load').hide();

$('#form').submit(function(){

valid = true;
if($('#nom').val()=='')
{
$('#nom').prev('.error').fadeIn(1000).text('Indiquez votre nom');
valid = false;
}
else
{
$('#nom').prev('.error').slideUp();
}

if(!$('#email').val().match('^[a-z0-9]+([_|\.|-]{1}[a-z0-9]+)*@[a-z0-9]+([_|\.|-]{1}[a-z0-9]+)*[\.]{1}[a-z]{2,6}$', 'i'))
{
$('#email').prev('.error').fadeIn(1000).text('Indiquez un email valide');
valid = false;
}
else
{
$('#email').prev('.error').slideUp();
}
if($('#message').val()=='')
{
$('#message').prev('.error').fadeIn(1000).text('Indiquez votre message');
valid = false;
}
else
{
$('#message').prev('.error').slideUp();
}

if(valid==true)
{
var nom = $('#nom').val();
var email = $('#email').val();
var message = $('#message').val();
var dataString = 'nom='+nom+'&email'+email+'&message'+message;

$.ajax({

type: 'POST',
url: 'contact2.php',
data: dataString,

beforeSend: function()
{
$('#load').fadeIn();
},

success: function()
{
$('#load').fadeOut();
$('#form').slideUp();
$('#success').slideDown();
$('#success').text('Formulaire envoyé');
}

});
}


return false;
});
});


(formulaire php)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf8">
<title>Caveau du Terroir</title>
<link type="text/css" media="screen" rel="stylesheet" href="css/index.css" >
<link href='http://fonts.googleapis.com/css?family=Roboto:400,900italic,700italic,500italic,400italic,300italic,100italic,300,100,500,700,900' rel='stylesheet' type='text/css'>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript" src="js/javascript.js"></script>

</head>
<body>

<header>
<div id="content">
<img src="img/1.jpg" alt="Image de backgroud" id="wallpaper">
<table id="menu">
<tr>
<td>
<a href="index.php">Tableau</a>
</td>
<td>
<a href="graphique.php">Graphique</a>
</td>
<td>
<a href="contact.php">Contact</a>
</td>
</tr>
</table>
</div>

</header>

<div id="content2">
<p><center>Contact</center></p>
<br>
</div>

<div id="content3">
<div id="success"></div>
<form id="form" action="contact2.php" method="post">
<label for="nom">Nom :</label>
<span class="error"></span>
<input type="text" name="nom" id="nom"/>

<label for="text">Email :</label>
<span class="error"></span>
<input type="email" name="email" id="email"/>

<label for="message">Votre message :</label>
<span class="error"></span>
<textarea name="message" id="message"/></textarea>

<input type="submit" id="submit" class="submit" value="Envoyer"/>
</form>

<div id="load"></div>
</div>


<br>
<br>

</body>

<footer>
<div id="content4">
<table id="menu2">
<tr>
<td>
<a href="rates.php">Mentions Légales</a>
</td>
</tr>
</table>
</div>
</footer>

</html>

(bdd PDO connection )
<?php

if(!empty($_POST) && !empty($_POST['nom']) && !empty($_POST['email']) &&
filter_var($_POST['email'],FILTER_VALIDATE_EMAIL) && !empty($_POST['message']))

{
extract($_POST);
$nom = strip_tags($nom);
$email = strip_tags($email);
$message = strip_tags($message);

try
{
$bdd = new PDO('mysql:host=127.0.0.1;dbname=caveau', 'cave', 'cave') or die (print_r($bdd->errorInfo()));
$bdd->exec('SET NAMES utf8');
}

catch(Exeption $e)
{
die('Erreur:'.$e->getMessage());
}

$req = $bdd->prepare('INSERT INTO Contact (nom,email,message) VALUES (:nom,:email,:message)');
$req->execute(array(':nom'=>$nom, ':email'=>$email, ':message'=>$message));
$req->closeCursor();

$to = 'retropixeljura@gmail.com';
$subject = $nom.' vous envoi un message';
$message = nl2br($message);

$headers = 'From:'.$email."\r\n";
$headers.= 'MIME-version: 1.0'."\r\n";
$headers.= 'Content-Type: text/html; charset=utf-8'."\r\n";
mail($to,$subject,$message,$headers);
header('Location: contact.php');
}

else
{
extract($_POST);
if(empty($nom)) {echo 'Indiquez votre nom<br />';}
if(empty($email) ||!filter_var($email,FILTER_VALIDATE_EMAIL)) {echo 'Indiquez un email valide<br />';}
if(empty($message)) {echo 'Indiquez votre message<br />';}
}


?>

Merci de pouvoir m'aider




Créer un tableau en ajax sujet




Bonjour,

J'utilise plusieurs listes déroulante (listes liées en ajax) et après ma dernière liste je voudrais afficher un tableau avec les données de toutes mes listes.

Pour mes listes liées, je génère du code xml avec XMLHttpRequest et je me demandais quel serait le format de fichier le plus adapté pour faire mon tableau en ajax (texte, XML, HTML,Json).

ps: je ne connais pas vraiment JSON.

Merci pour vos réponse.




ScrollTop vers ancre après un chargement de contenu en Ajax sujet

vendredi 28 mars 2014




Bonjour,

Je voudrais pouvoir utiliser un scrollTop après un chargement de contenu en ajax.
Le problème est que la page se charge bien mais le scrollTop ne s'effectue pas...

Voila mon code :

Code:


1
2
3
4
5
6
7
8
9
10
<nav>
<ul>
<li><a href="mentions_legales.html" data-type="lien">Mentions Légales</a></li>
<li><a href="#qui_sommes_nous" data-type="ancre">Qui sommes nous ?</a></li>
</ul>
</nav>
<section id="main>
CONTENU
<div id="qui_somme_nous">CONTENU</div>
</section>




Code:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$('a').on('click', function(){
if($(this).data('type') == 'ancre'){
ancre = $(this).attr("href");
page = association_ancre_page[ancre];
//verifie si l'ancre est appelé dans la page courante grace a un tableau associatif (une ancre correspond à une page)
if(current_page != page){
$.ajax({
url:page,
cache: false,
success: function(html){
$("#ajax").empty();
$("#ajax").append(data);
$("#ajax").fadeIn(900);
if(typeof(ancre) != 'undefined'){
$('html, body').animate({scrollTop: $(ancre).offset().top)}, 'slow');
}
}
})
}

}
}


Voila donc comme je l'expliquais, le scrollTop ne veux pas se faire pour une raison inconnu...

Ps : Je précise que mon scrollTop fonctionne quand je suis dans l'ancre est dans la page actuelle.