Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/10/2011, 15h22   #1
Membre du Club
 
Inscription : mars 2008
Messages : 274
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 274
Points : 50
Points : 50
Par défaut Ajax, souci avec la fonction callback

Bonjour/ bonsoir,

J'envoie par la fonction $.post() des données. Le souci se situe sur le retour... Pour être plus concret, j'ai ce script:
Code :
1
2
3
$.post('file.php', $(this).serialize(), function(data) {
...
}
'files.php' est à la fois un fichier qui envoie et traite ses propres données. Il a formulaire qui est soumis par le java-script ci-dessus, et traité par ce script php
Code :
1
2
3
if (isset ($_POST['mail'])) {
	$controlCompte->getPassword($_POST['mail']);
}
présent également dans 'file.php'
Dans data, j'obtiens bien les données retour, mais également un duplicata du fichier 'file.php', ce qui est pour le moins gênant...
Existe-il une possibilité de filtrer les données de retour ? De n'avoir que le message retour de 'getPassword()' (mail envoyé ou pas par exemple)
Merci,
yann18 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 12h06   #2
Membre confirmé
 
Homme Lionel Chaumeau
Développeur Web
Inscription : octobre 2011
Messages : 75
Détails du profil
Informations personnelles :
Nom : Homme Lionel Chaumeau
Localisation : France, Puy de Dôme (Auvergne)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2011
Messages : 75
Points : 264
Points : 264
Citation:
Envoyé par yann18 Voir le message
Non, pas d'idée ?
merci,
Bonjour,
Il faut que tu gères ton format de retour (dans le fichier php):
si tu veux un retour en text, un simple echo suffira
Si tu veux d'autres formats (XML, JSon), je te conseille d'aller voir des tutos sur ajax, il y en a pleins qui te montreront comment faire.
(si ton fichier php ne renvoie rien, ou que tu ne gères pas le format de ton retour dans le javascript), il y a des chances que le javascript récupère le fichier php entier sous forme de texte (comme ça a l'air de se passer dans tes essais).
Tu peux déjà commencer par ce tuto
__________________
My laptop, my bike and my double-sticks...
kalimukti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 20h58   #3
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonsoir

Code :
1
2
3
$.post('file.php', $(this).serialize(), function(data) {
...
}
Je crois que le problème vient du contenu du this dans $(this).serialize(). Il convient de le remplacer par l'ID du formulaire.
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 17h10   #4
Membre du Club
 
Inscription : mars 2008
Messages : 274
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 274
Points : 50
Points : 50
Bonjour/ bonsoir,

Les infos transmises par PHP sont de simples echo '', avec des textes simples ("Votre compte a bien été créé" par exemple)
Et maintenant, si je passe ce message dans une variable PHP
Code :
$message  = "Votre compte a bien été créé";
Et que je la transmet à java-script via un fichier json dans la fonction callback:
Code :
$.post('file.php', $('#form').serialize(), function(fichier json) {
Peut-être que le résultat sera plus probant... (?)
yann18 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h41.


 
 
 
 
Partenaires

Hébergement Web