2011-10-04 3 views
1

i ont une fonction de succès qui a des données stockées à l'intérieur:comment utiliser JavaScript et et php pour stocker une variable?

function(receiverUserIds) { 
console.log("IDS : " + receiverUserIds.request_ids); 
} 

ce enregistrerons: IDS: 123123213, 4645646654, 7897987989, ....

ce que je veux faire est de saisir tous ces id et les stocker dans la base de données.

d'une façon que je pensais le faire est à l'aide ajax:

function(receiverUserIds) { 
     console.log("IDS : " + receiverUserIds.request_ids); 
     $.ajax({ 
      type: "POST", 
      url: "<?php echo $_SERVER['PHP_SELF']; ?>", 
      friends_invite: receiverUserIds.request_ids, 
      success: function(msg){ 
       /* alert("Data Saved: " + msg); */ 
      } 
     }); 
} 

et sur la même page:

if(isset($_POST['friends_invite'])){ 
print_r($_POST['friends_invite']); 
} 

mais il ne semble pas fonctionner.

Quelque chose pourrait être faux avec l'ajax ou je ne sais pas. Peut-être que vous pouvez suggérer une autre façon de faire cela .. ??

des idées?

Merci

edit: si j'activer l'alerte lert("Data Saved: " + msg); je reçois une alerte si je sais que le succès ajax est, mais je ne vois pas mon $_POST être en écho

+0

Cette méthode devrait fonctionner. Définir "ne semble pas fonctionner". Ce qui se produit? Pouvez-vous poster un extrait de ce à quoi ressemble le code lorsque vous visualisez la source dans votre navigateur après sa génération? – mellamokb

+0

Comme le javascript étant écrit avec php? Sinon, '_SERVER [PHP_SELF]' n'est pas disponible. –

+0

si j'active la fonction d'alerte ("Data Saved:" + msg); Je reçois une alerte, donc je sais que l'ajax est réussi, mais je ne vois pas mon $ _POST écho – Patrioticcow

Répondre

3

Cette méthode devrait fonctionner correctement . La première chose qui ressort est que vous devriez utiliser l'option data pour transmettre les données. Voir le specs of the documentation pour plus d'informations.

$.ajax({ 
    ... 
    data: { friends_invite: receiverUserIds.request_ids }, 
    ... 
}); 
+0

Je l'ai essayé, toujours pas de réponse – Patrioticcow

+0

Utilisez fiddler (http://www.fiddler2.com/fiddler2/) ou quelque chose pour suivre quelles données circulent aller et venir au lieu de simplement dire "ne fonctionne pas". Qu'est-ce qui ne fonctionne pas? Que ce passe-t-il? Qu'est-ce qui ne se passe pas? Pourquoi? Parcourez le processus étape par étape de manière systématique et voyez jusqu'où vont les données avant que quelque chose n'échoue. – mellamokb

+0

si j'active l'alerte 'alerte ("Data Saved:" + msg);' Je reçois une alerte, donc je sais que l'ajax est réussi, mais je ne vois pas mon '$ _POST' se faire écho – Patrioticcow

1
friends_invite: receiverUserIds.request_ids 

Je ne belive pas JQuery fonctionne de cette façon. Il devrait être changé à quelque chose comme:

data: 'friends_invite=' + receiverUserIds.request_ids 
1

Utilisez this-

 $.ajax({ 
      type: "POST", 
      url: "<?php echo $_SERVER['PHP_SELF']; ?>", 
      'data':{friends_invite: receiverUserIds.request_ids}, 
      success: function(msg){ 
       /* alert("Data Saved: " + msg); */ 
      } 
     }); 
Questions connexes