Comment passer des données à partir de Javascript, PHP et vice-versa?
Comment puis-je passer d'avoir un script Javascript demande une page PHP et de transmettre les données? Comment puis-je avoir le script PHP transmettre des données vers le script Javascript?
client.js:
data = {tohex: 4919, sum: [1, 3, 5]};
//how would this script pass data to server.php and access the response?
server.php:
$tohex = ... ; //How would this be set to data.tohex?
$sum = ...; //How would this be set to data.sum?
//How would this be sent to client.js?
array(base_convert($tohex, 16), array_sum($sum))
Vous devez vous connecter pour publier un commentaire.
Le passage des données à partir de PHP est facile, vous pouvez générer le JavaScript avec elle. L'autre manière est un peu plus difficile - vous devez appeler le script PHP en Javascript demande.
Un exemple (à l'aide d'événement traditionnel modèle d'enregistrement pour des raisons de simplicité):
Quelle que soit
get_data.php
produit, qui apparaîtra dans httpc.responseText. Erreur de manipulation, l'enregistrement d'un événement et de la croix-navigateur XMLHttpRequest la compatibilité de gauche comme de simples exercices pour le lecteur 😉Voir aussi La documentation de Mozilla pour d'autres exemples
Je rencontre un problème similaire, l'autre jour. Dire, je veux transmettre des données côté client vers le serveur et écrire les données dans un fichier journal. Voici ma solution:
Mon simple côté client code:
Et le code php côté serveur:
Espérons que cela fonctionne pour vous et pour les futurs lecteurs!
J'utiliserais JSON que le format et l'Ajax (vraiment XMLHttpRequest) que le client->serveur mécanisme.
Il y a un peu de moyens, le plus important étant d'obtenir des données de formulaire, ou d'obtenir de la chaîne de requête. Voici une méthode à l'aide de JavaScript. Lorsque vous cliquez sur un lien, il va appeler le _vals('mytarget', 'theval') qui va envoyer les données du formulaire. Lorsque votre page enregistre vous pouvez vérifier si cette forme de données a été définie et ensuite le récupérer à partir de la forme des valeurs.
Alternativement, vous pouvez l'obtenir via la chaîne de requête. PHP a votre _GET et _SET fonctions globales pour atteindre ce qui rend beaucoup plus facile.
Je suis sûr qu'il ya probablement plus de méthodes qui sont mieux, mais ce ne sont que quelques-uns qui viennent à l'esprit.
EDIT: Bâtiment à partir de ce que les autres ont dit à l'aide de la méthode ci-dessus, vous avez une balise d'ancrage comme
Et puis dans votre PHP, vous pouvez obtenir des données de formulaire à l'aide de
Ainsi, lorsque vous cliquez sur le lien qui utilise JavaScript, il sera valider les données du formulaire et lorsque la page enregistre de ce clic, vous pouvez le récupérer à partir de PHP.
L'utilisation de cookies est une manière facile. Vous pouvez utiliser jquery et un pluging comme jquery.cookie ou créer votre propre.
À l'aide de Jquery + jquery.témoin, par exemple
J'ai trouvé ce utile Côté Serveur et les Cadres Hybrides:
http://www.phplivex.com/
http://www.ashleyit.com/rs/
J'ai été en utilisant Ashley RSJS Script pour mettre à jour les valeurs dans le code HTML sans aucun problème pendant un long moment jusqu'à ce que j'ai rencontré JQuery (ajax, charge, etc.)
Vous permet de transférer des données à partir de PHP en javascript mais la seule façon d'obtenir des données à partir de javascript, PHP via AJAX.
La raison en est que vous pouvez construire un javascript valide par le biais de PHP, mais pour obtenir des données PHP, vous aurez besoin d'obtenir de PHP fonctionne à nouveau, et depuis PHP ne fonctionne pour traiter la sortie, vous aurez besoin d'un rechargement de la page ou d'une requête asynchrone.
l'autre façon d'échanger des données à partir de php à javascript ou vice-versa est en utilisant des cookies, vous pouvez enregistrer des cookies en php et lu par votre javascript, pour cela, vous n'avez pas à utiliser les formulaires ou ajax