11548 sujets

JavaScript, DOM et API Web HTML5

bonjour je suis nouveau sur le forum et je souhaite trouver une solution a un prob que j'essaye de resoudre depuis quelques jours et j'ai pas trouver de solution je suis debutant en php et jquery Smiley confused bon voila j'ai une liste de liens sur une page index.php ces liens menent vers page1.php qui traite les donnees de index.php pour simplifier les choses voici le bout du code Smiley lol (index.php) concernant seulement le probleme:

<html>
<body>

<p><a href="page1.php?pseudo=<?php echo $donnees['id']; ?>"><?php echo htmlspecialchars($donnees['pseudo']); ?></a></p>
  
<div id="output"></div>
</body>
</html>



et pour page1.php je traite avec un echo a la fin, avec php seul ca marche bien le seul inconvenient la page se recharge c pour ca que j'ai besoin des service d' ajax avec jquery Smiley biggol mon code est le suivant:



script type="text/javascript" src="jquery-1.6.4.mi<n.js"></script>
<script type="text/javascript">

$(document).ready(function(){   // le document est chargé

$("a").click(function(){   // on selectionne tous les liens et on définit une action quand on clique dessus

page=($(this).attr("href")); 


$.ajax({ 

type: "GET",
url: "page1.php?pseudo=<?php echo $donnees['id']; ?>",
data: 'pseudo='+pseudo,
 
cache: false, 

success:function(html){  
afficher(html);     
},

error:function(XMLHttpRequest, textStatus, errorThrows){ 
}
});
return false; 
});

});function afficher(donnees){ 
$("#output").empty(); 
$("#output").append(donnees); 
}

je ne sais vraiment comment attribuer les variables a la requete ajax Smiley decu j'ai essayer plusiers combinaisons mais sans succes ,si quelqu'un sait comment je serai tres reconnaissant merci infiniment..
Modifié par nano3000 (12 Oct 2011 - 11:07)
Essai comme ça :

au niveau de ton fichier index.php (si j'ai bien compris ton explication)

<p><a href="page1.php?pseudo=<?php echo $donnees['id']; ?>" rel="<?php echo $donnees['id']; ?>"><?php echo htmlspecialchars($donnees['pseudo']); ?></a></p>


et au niveau ton ajax


$("a").click(function(e){
  e.preventDefault(); // retire l'action du clic (ça remplace return false;)

  var obj = $(this); // le "var" est important, [i]page=[/i] non, [b]var page=[/b] (par rapport à ton code)

  $.ajax({
     type: "GET",
     url: "page1.php",
     data: 'pseudo=' + obj.attr('rel'),

etc.
merci kenor pour votre reponse Smiley smile ,mais ajax m'envoi toute la page index.php au lieu de page1.php Smiley decu moi je veux recuperer le resultat de traitment de la page1.php (a la quelle j'ai envoyer des variables depuis index.php) dans un(e) div dans index.php Smiley rolleyes merci...
C'est bien ce que j'ai indiqué, donc ton soucis doit probablement être ailleurs.
En chargeant page1.php, tu ne peux pas charger index.php (logique Smiley smile )

A moins que je n'ai pas compris ce que tu as voulu dire ?
merci kenor encore une fois et pour le temps que tu me consacre pour me repondre,ui j'essaye de telecharger le contenu de page1.php dans index.php ui je vais revoir s'il n y pas une erreur dans mon code encore merci Smiley smile
re ca marche ca marche merci kenor l'erreur etait header('Location: index.php'); que j'ai oublier a la fin page1.php Smiley confused Smiley lol car avant je ne savais pas que les requete asynchrones exister Smiley lol alors j'ai essayer de bricoler avec header location.. Smiley lol merci encore une fois Smiley smile Smiley biggrin
Modifié par nano3000 (11 Oct 2011 - 17:15)