Problèmes PHP/AJAX

Résolu/Fermé
leandro95 Messages postés 67 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 5 juin 2016 - Modifié par leandro95 le 22/11/2014 à 18:36
leandro95 Messages postés 67 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 5 juin 2016 - 23 nov. 2014 à 22:11
Bonjour m'ont traitement ajax ne ne fonctionne pas :

page test.php:


<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Un formulaire de connexion en AJAX</title>
</head>

<body>
<div id="resultat"> Nous allons afficher un retour en jQuery au visiteur </div>
<h1>Un formulaire de connexion en AJAX</h1>

<form>
<p>
Nom d'utilisateur : <input type="text" id="username" />
Mot de passe : <input type="password" id="password" />
<input type="submit" id="submit" value="Se connecter !" />
</p>
</form>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
$(document).ready(function(){

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

$.post(
'http://localhost/Project/modules/mod_dashboard/test2.php',
{
login : $("#username").val(),
password : $("#password").val()
},

function(data){

if(data == 'Success'){
$("#resultat").html("<p>Vous avez été connecté avec succès !</p>");
}
else{
$("#resultat").html("<p>Erreur lors de la connexion...</p>");
}

},

'text'
);

});

});
</script>
</body>
</html>


test2.php



<?php

$username = "Sdz";
$password = "salut";

if( isset($_POST['username']) && isset($_POST['password']) ){

if($_POST['username'] == $username && $_POST['password'] == $password){ // Si les infos correspondent...
session_start();
$_SESSION['user'] = $username;
echo "Success";
}
else{ // Sinon
echo "Failed";
}

}

?>
A voir également:

3 réponses

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 647
22 nov. 2014 à 22:36
Bonsoir,
c'est dommage que tu n'aies pas gardé la syntaxe que je t'ai conseillé...
https://forums.commentcamarche.net/forum/affich-31093961-problemes-et-question-php-ajax

Par contre... tu es sympa.. tu nous dis .. "ça ne marche pas" ... mais bon.. nous ne sommes pas devins...;

Au passage.. je t'invite fortement à installé le plugin FireBug (pour FireFox) .. à le lancer... à lancer ta page web .. et à regarder ce que firebug t'affiche dans la console... ça peut fortement aider à comprendre le souci.


0
leandro95 Messages postés 67 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 5 juin 2016
22 nov. 2014 à 23:20
"Champs mot de passe présents sur une page non sécurisée (http://). Cela représente un risque de sécurité permettant le vol d'identifiants de connexion."
voilà ce que la console m'affiche
0
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 647 > leandro95 Messages postés 67 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 5 juin 2016
23 nov. 2014 à 00:33
ça ce n'est rien.

Mais lorsque tu executes ton code... il devrait te faire apparaitre une ligne concernant l'ajax... que t'affiche t'il dedans ??

Et tu ne nous as pas non plus dit .. en quoi ça ne marchait pas....

Et enfin.. tu as repris ma syntaxe ?
Si oui.. montres nous le code ainsi corrigé !
0
leandro95 Messages postés 67 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 5 juin 2016
Modifié par leandro95 le 23/11/2014 à 10:40
En quoi les syntaxe diffère $.post est juste un raccourcie de $.ajax de type POST?
0
yassinozi Messages postés 43 Date d'inscription samedi 10 juillet 2010 Statut Membre Dernière intervention 18 juin 2016 1
23 nov. 2014 à 13:24
Bonjour,

Ta méthode est correcte, tu as juste quelques erreurs au niveau du code,

1)

sur le formulaire il faut que tu change le type du bouton "Submit" par un bouton de type "Button", pour ne pas rafraichir la page quand tu cliques dessus et afin que le résultat reste visible.

...

<form>
<p>
Nom d'utilisateur : <input type="text" id="username" />
Mot de passe : <input type="password" id="password" />
<input type="button" id="submit" value="Se connecter !" />
</p>
</form>

...

2)

C'est pas la peine de mettre tout l'URL quand le fichier test2.php est dans le même répertoire.
...

$.post(
// 'http://localhost/Project/modules/mod_dashboard/test2.php',

"test2.php",
// le nom de la page est suffisant dans ce cas.
{
login : $("#username").val(),
password : $("#password").val()
},

...

3)

Au niveau de la page test2.php, tu dois changer $_POST["username"] par $_POST["login"]. parce que la variable que tu as choisi sur la méthode $.post au-dessus est login non pas username.
...

login : $("#username").val(),

//donc $_POST["login"] est non $_POST["username"].

...
0
leandro95 Messages postés 67 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 5 juin 2016
Modifié par leandro95 le 23/11/2014 à 22:17
Tout fonctionne merci bcp yassinozi
0