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/09/2011, 13h23   #1
Membre régulier
 
Inscription : octobre 2010
Messages : 253
Détails du profil
Informations forums :
Inscription : octobre 2010
Messages : 253
Points : 92
Points : 92
Par défaut Utilisation de ajax

Bonjour, débutant sur JQuery je dois modifier un script AJAX afin d'envoyer une donnée supplémentaire vers ma page php traitant la requête (le paramètre "critère"), mais je ne vois pas comment faire, voici ce que j'ai tenté, mais ça ne fonctionne pas:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
function test(search, adresse, critere)
{
    if (search.length == 0 ) {
        $("#suggestions").hide();
    } else {
		$.ajax({type: "POST", url: adresse, data: "search="+search, "critere="+critere, success: function(data){
            if(data.length >0) {
                $("#suggestions").show().css('z-index','2000');
                $("#autoSuggestionsList").html(data);
            }
        }});
    }
}
J'aimerais ensuite récupérer le paramètre dans ma page php grâce à un
Code :
$critere = $request->getParameter('critere');
comme je le fait actuellement pour le parammètre "search".

Merci pour l'aide !
student_php est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 13h45   #2
Invité régulier
 
Homme
Étudiant
Inscription : septembre 2011
Messages : 19
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2011
Messages : 19
Points : 5
Points : 5
Salut tout d'abord, pour réaliser ta requête Ajax, tu dois procéder de la manière suivante :
Pour le JS :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
	var lien = "taPage.php"; // Lien vers le script php à exécuter
	var param = "demande= "+Tesdata // Tesdata correspond aux données que tu souhaite envoyer
	$.ajax({ // Début de la requête Ajax
		url:lien, // Récupération du lien
		data: param, // données envoyées en paramètre de la requête
		type:'POST', // envoi de type POST
		dataType:'json', //type de données souhaité pour le retour des résultats
		success: function(resultat){ //si l'appel de la méthode est réussie		
// Code que tu souhaite appliquer sur le résultat de ta requête PHP
 
		} 
	});
Pour le PHP:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
    	if(!empty($_POST['demande'])){	//Si la personne a fait une demande
		if($_POST['demande'] == "Tesdata"){// si la demande est Tesdata
 
			MaFonction(); // alors on fait appel à la fonction MaFonction	
 
		} else {
	                  echo('erreur de paramètres');
		}
	}
	else echo ("pas de demandes reçues"); // sinon on affiche ce message 
 
function MaFonction(){
      //code que tu souhaite réaliser
      echo json_encode($resultat);// tu renvoies à ton navigateur le résultat de ta fonction au format Json
}
Novac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 13h48   #3
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 040
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 040
Points : 45 141
Points : 45 141
Citation:
tu dois procéder de la manière suivante :
dois ?
ce n'est pas une obligation ...
c'est une possibilité
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 14h08   #4
Membre régulier
 
Inscription : octobre 2010
Messages : 253
Détails du profil
Informations forums :
Inscription : octobre 2010
Messages : 253
Points : 92
Points : 92
Merci pour vos réponses,

Dans mon cas, je dois transmettre plusieurs paramètres, voici ce que j'ai fait, mais je n'arrive pas à récupérer correctement mes paramètres côté traitement PHP:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function lookup(search, adresse, critere)
{
    if(search.length == 0 || search.length == 1) {
        $("#suggestions").hide();
    } else 
	{
		var	params = new Array(search, critere);
		$.ajax({
			type: "POST", 
			url: adresse, 
			data: "elem="+params,
			success: function(data){
            if(data.length >0) {
                $("#suggestions").show().css('z-index','2000');
                $("#autoSuggestionsList").html(data);
            }
        }});
    }
}
PHP
Code :
1
2
3
4
5
6
if(!empty($_POST['elem']))
	{
		$res = $_POST['elem'];
		echo $res[0];
		echo $res[1];
	}
Je récupère un tableau mais au lieu d'avoir $res[0] pour search et res[1] pour critère j'ai une case par caractère de la variable search.
Ainsi, pour search = 'test' et critere = 1 j'ai $res[0] = t et $res[1] = e
student_php est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 14h21   #5
Invité régulier
 
Homme
Étudiant
Inscription : septembre 2011
Messages : 19
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : septembre 2011
Messages : 19
Points : 5
Points : 5
Il suffit que tu fasses :
Code :
data: "search="+search+ "&critere="+critere
Novac est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/09/2011, 14h35   #6
Membre régulier
 
Inscription : octobre 2010
Messages : 253
Détails du profil
Informations forums :
Inscription : octobre 2010
Messages : 253
Points : 92
Points : 92
Oui c'est ce que je viens de voir.

Merci beaucoup !
student_php est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h03.


 
 
 
 
Partenaires

Hébergement Web