• ベストアンサー

JS→PHP「リンクget送信」$.getの違い

H240S18B73の回答

  • ベストアンサー
回答No.2

GETに変数つけるときは文字列をencodeURIとかして 記号や全角文字をエスケープしなきゃいけないけど $.getはそのへんやってくれるので楽 あと$.getはサーバーのプログラムが処理した結果を コールバックに渡せるのでAjaxに使えます、 というかそもそもAjaxの為の関数で 『これはAjaxのリクエストですよ』ってカンジの情報が httpリクエストオブジェクトに付きます どっちで送られて来たとしても結局PHPは $_GET[" "]なりで取得するワケなんで PHPはあんまここでは関係ないですね

re999
質問者

お礼

回答ありがとうございました。 参考になりましたー

関連するQ&A

  • javascript と php とでのデータの受け渡し

    既出の質問かもしれませんが、どの回答を読んでもいまいち理解できなかったので質問させて下さい。 phpからjavascriptへ、その処理結果をphpに送りたいと考えております。 まず phpの変数のデータをjavascriptでクライアント側で処理させるために、 print(<script type='text/javascript'>);~などなど、 printを使ってphpの変数を入れ込んだスクリプトを出力しています。 そして、出力したjavascriptの中にクライアント側の処理後のデータ をphpに送るために、 XmlHttpRequestのopenメソッドで("GET",url,true)とし、 urlには"***.php" + "?a=" + aの値 をいれて request.send(null);で送信するようにしています。 最後に、送信先のphpで $a = $_GET["a"];として受け取ろうとしています。 ちなみに、これらは全て同一ファイル上に書いてあり、 XmlHttpRequestのopenメソッドのurlには、 そのファイル自身を記述してあります。 ブラウザでアクセスしてソースを見てみると、 javascriptは記載されていますが、処理がされていないようで、よって 最後にGETでデータも取得がされていないようです。 そもそもこういったことは可能なのでしょうか? 自分の考え方は間違っているのでしょうか? javascriptもphpも初心者なもので、考え方があっているのかいないのかも 判断できない状況です。また、このjavascriptが何をきっかけに実行されるようにすればいいのかもよくわかりません。 それでは、宜しくお願い致します。

  • PHPからjavascriptへGETで値を渡すとき

    初歩的な質問で失礼いたします。 PHPからjavascriptへGETで値を渡すときにマルチバイト文字が文字化けしてしまいます。 javascriptのjQueryというライブラリを利用しています。 具体的には、 -------------- test.js -------------- var url = 'test.php?code=' + code; $.get(url, function(data){ alert(data); } -------------------------------------- --------------- test.php ------------- $input = $_GET['code'];  ・・・mysqlの処理・・・ echo $output; --------------------------------------- という処理をしています。 test.js → test.phpへ渡す値はマルチバイトではないので問題ないのですが、 test.php → test.jsへ返す値はマルチバイトで文字化けしてしまいます。 php側でrawurlencode関数でエンコードしてから、javascript側でdecodeURI関数を使用してデコードしたのですが、うまくデコードできませんでした。 恐らくデコードの仕方が悪いんだと思うんですが。。。 分かりにくい説明で恐縮ではございますが、ご回答をお願いいたします。 宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • jQueryでGETだと送信できるデータがPOSTだと送信できません。

    jQueryでGETだと送信できるデータがPOSTだと送信できません。 jQueryをつかって文字列をPHPに送信したいのですが、GETでは送信できるのにPOSTだと送信ができません。 js -------------------- $.ajax({ type:"POST", //GETだと送信できます。 url:"hoge.php", data:{data:"hoge"}, success:function(data,status){ alert(data); } }); -------------------- php -------------------- <?php $_POST[data] //GETの場合、$_GET[data] == "hoge"。 echo $data; ?> -------------------- 問題点がわかりましたらご指摘いただければと思います。

  • PHP内でGETの送信

    いつもお世話になっています。 ループ作業の中で他サーバーのURLへ値を送りたいのですが処理内で値を送ることは可能なのでしょうか? 【イメージソース】================================== $count = 1; //処理開始 while ($count > 10) { //各処理ごと値を変数を送信 $url=http://www.xxx.jp/a.aspx?e={$value}; if(**$urlへの値転送に失敗したら**){ echo {$count}回数目でエラーが発生しました"; exit; } } $count++; ソケット関数などを利用してできないかなー・・・と思っていたのですがどのように利用していいかが分からずご質問させて頂きました(;;) 何卒よろしくお願い致します。

    • ベストアンサー
    • PHP
  • POST送信かGET送信か

       ------------------------------------------ <SCRIPT language="JavaScript"><!-- function GoPage(url, id){ document.form.action = url; document.form.id.value = id; document.form.submit(true) } // --></script> <!--中略--> <input type="submit" name="submit" value="送信" onClick="javascript:GoPage("a.php", "1")">    ------------------------------------------    上記のような処理を書いた場合、 遷移先である a.php で id(値:1)を取得する時は POSTで受け取るのですか?それともGETでしょうか?   

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

    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です どうぞご教授願います

  • フォームを利用しないGET送信について

    任意のページより、下記例のようなテキストリンクをクリックさせ、 遷移した先のページURLに「?categor_id=1」などと付与させたいのですが、 どうすればよいでしょうか? ・カテゴリー1 ・カテゴリー2 別にフォームを利用してもよいのですが、 自由入力項目を付与させたいわけではないため、 その場合は、具体的にどう書けばよいでしょうか? (フォームの中にテキストリンクを書く方法が、分からない、という意味です) また、自分で検索した限りでは、下記のようなページを見つけたのですが、 この場合だと、URLを予め指定しなければいけないようなので、 任意のページに設置するためには、 自分のページを動的に取得して、末尾に「?categor_id=1」を 付与するような感じなのでしょうか? ▽http://www.php-labo.net/tutorial/php/form.html#get 後、セキュリティのこととかで、 何か気にすることはありますか?

    • ベストアンサー
    • PHP
  • getで日本語を受け取りたい

    リンクからgetで日本語を送信して、javascriptで受け取る方法はありますか? 文字化けするのでdecodeURIComponentでデコードしようとしましたがうまくいきません 送信するリンクのurlはこんな感じです http://hoge.net?id=1&name=なまえ 受け取る側のHTMLには、javascriptで var NAME=decodeURIComponent(NAME); としています

  • $GETが取得できない場合に指定の値を使う

    PHPでURLから変数を取得できるGETというのがありますがURLにこの値が指定されていない場合に指定した値を使うことは可能でしょうか? つまりこういうことです。 $aaa = $_GET['bbb']; としている場合にURLを ~/index.php?bbb=0000 とした場合は aaa=0000 となりますが、 ~/index.php としかしなかった場合はaaaの値は取得できずにエラーになってしまうため、このaaaの値を強制的に1111に指定し aaa=1111 としてphpプログラムを続行させたいのです。 そのようなことはできますか?

    • ベストアンサー
    • PHP
  • phpからjsへ

    はじめまして。 jQueryの$.ajax関数のGETを使って phpからjavascriptに echo 'document.write("<script type='text/javascript'>var like_arr=new Array(1,1,1,1,1,1,1,1,1,1,1,1,1)</scr"+"ipt>");' と値を返してarrayを作成しようと思っています。 しかしこの返し方だと ブラウザに表示した時 document.write(" とhtml上に表示されてしまいarrayが作成されません。 しかしjsに直接 document.write("<script type='text/javascript'>var like_arr=new Array(1,1,1,1,1,1,1,1,1,1,1,1,1)</scr"+"ipt>"); と書き込んでみるとarrayが存在しています。 どうしたらphpからの値でdocument.writeをする事が出来ますか? 分かる方いらっしゃいませんか? よろしくお願いします。

    • 締切済み
    • PHP