重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

jqueryとphpで変数をやり取りしたい

こんばんは
現在jqueryとphpのやり取りを模索しています
phpで定義した変数(仮に$dataPHPとして)に文字列を入れておきます
それを外部のjqueryにどうにかして渡す(この『渡す』方法が分からない・・・)
そして、jquery内で受け取った変数から色々処理をして、最終的に今度は別の変数(また仮に$dataJQUERYとします)をPHPに渡します
PHPではその変数を受け取り、以降の処理を進めていく、というものです

『jquery php データ 渡す』などで調べてみると、$.ajaxや$.postを使うとデータを渡せるとあり、実際にサンプルプログラムを動かしてみました
しかし、javascriptからphpにデータを送ることはできても、コールバック関数というものでjavascriptに返ってきたり、innerHTMLで直接埋め込んでしまったりと、純粋に変数として保持できる方法が見つかりませんでした
jqueryとphpで自由に変数を渡しあえる方法はないのでしょうか?

現在の環境はjquery1.4.2、php5、apache2、IE7です
どうぞご教授願います

A 回答 (1件)

ajaxはよくわりませんけれど…



>javascriptからphpにデータを送ることはできても、コールバック関数という
>ものでjavascriptに返ってきたり、innerHTMLで直接埋め込んでしまったりと
ajaxがそもそも非同期通信なのでコールバックにならざるを得ませんが、jQuery.getJSON( url, [ data ], [ callback(data, textStatus) ] ) でjason形式でデータを受け取れると思いますが?
 http://c-brains.jp/blog/wsg/08/05/29-015536.php
 http://api.jquery.com/jQuery.getJSON/
通信するためのデータ変換もなくしたいという意味であるなら、私にはわかりかねますが…

あるいは、コールバックがいやだと言う意味なら、いっそのこと同期通信にしちゃうとか…
 http://api.jquery.com/jQuery.ajax/
dataTypeがjasonpだと同期をサポートしないとか書いてあるみたいですが…(英語が苦手なのでよくわからん)
dataTypeにscriptが指定可能であるというようなことも書いてありますね。
 http://api.jquery.com/jQuery.getScript/

>jqueryとphpで自由に変数を渡しあえる方法はないのでしょうか?
言語が違う上に回線経由の通信なので、スクリプト内のfunction間で引数を渡すのに比べれば多少の手間は必要ですが、jqueryを利用している時点で、かなり簡単になっているといえるのでは?
実際に想定なさっている送受信が定型的なものであるのなら、あらかじめその処理を含めて拡張しておけば、
 getData = jQuery.getPHPdata( url, sendData );
みたいに簡略化することも可能なはず。
 http://api.jquery.com/jQuery.extend/
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!