JavaScriptからPHPへのデータの受け渡しについて

このQ&Aのポイント
  • 現在、アマゾンWebサービスを利用して受け取った書籍データをデータベースへ格納したいと考えています。この書籍情報取得のシステムは全てJavaScriptと別のCGIプログラムの二つで動いており、DB格納へは一度PHPへと情報を渡し行わなければならないという事を知り色々と探していたのですが、よく理解できる情報に出会えず行き詰っております。
  • http://www.res-system.com/weblog/item/383こちらの情報で、<script type="text/javascript" src="http://www.res-system.com/weblog/media/1/jsphptest.php?param=1"></script><?php$param = $_GET['param'];header("Content-type: application/x-javascript");if ($param == '1') {echo "document.write(\"WEB Artisan\")";} else {echo "document.write(\"RESTARTSYSTEM\")";}?>という上二つのソースで単純にデータの受け渡しが出来ると知り、これが使えないかと思ったんですが、param=1で渡す値はやってみたのですが文字列や、変数では出来ない様子なのです。
  • 自分はPHPは多少分かりますがJavaScriptは全くの初心者でして、どなたか分かりやすく術を教えて頂けないでしょうか。宜しくお願い致します。
回答を見る
  • ベストアンサー

JavaScriptからPHPへのデータの受け渡しについて。

現在、アマゾンWebサービスを利用して受け取った書籍データをデータベースへ格納したいと考えています。 この書籍情報取得のシステムは全てJavaScriptと別のCGIプログラムの二つで動いており、DB格納へは一度PHPへと情報を渡し行わなければならないという事を知り色々と探していたのですが、よく理解できる情報に出会えず行き詰っております。 http://www.res-system.com/weblog/item/383 こちらの情報で、 <script type="text/javascript" src="http://www.res-system.com/weblog/media/1/jsphptest.php? param=1"></script> <?php $param = $_GET['param']; header("Content-type: application/x-javascript"); if ($param == '1') { echo "document.write(\"WEB Artisan\")"; } else { echo "document.write(\"RESTARTSYSTEM\")"; } ?> という上二つのソースで単純にデータの受け渡しが出来ると知り、これが使えないかと思ったんですが、 param=1で渡す値はやってみたのですが文字列や、変数では出来ない様子なのです。 自分はPHPは多少分かりますがJavaScriptは全くの初心者でして、どなたか分かりやすく術を教えて頂けないでしょうか。 宜しくお願い致します。

  • a2004
  • お礼率100% (4/4)

質問者が選んだベストアンサー

  • ベストアンサー
noname#44015
noname#44015
回答No.1

リンクされていたサイトをサッと見ましたが,これはJavaScriptを動的にはき出すPHPの話なので, a2004さんが考えているJavaScriptとPHP間のデータ受け渡しとは違うと思われます. JavaScriptとPHP間のデータ受け渡しならAjaxを使ってみてはいかがでしょうか?

a2004
質問者

お礼

回答有難うございました。 なる程、あのプログラムは受け渡しという動作ではなかったのですね。 理解しました。 そこでその「Ajaxを使って」とのご意見頂きましたが、すみませんが何処か参考になるサイト、書籍などはありますでしょうか・・・? 自分も探しているのですが上手く動かせる情報を探しきれていません。もしご存知でしたら紹介頂ければ幸いです。

その他の回答 (1)

noname#44015
noname#44015
回答No.2

私は「入門Ajax」という本を読んで基本的なことを覚えました.

a2004
質問者

お礼

自分もAjaxというヒントを頂き、書籍を探してみて解決できました。 回答有難うございました。

関連するQ&A

  • 文系でHTMLしかわからない者です。

    文系でHTMLしかわからない者です。 htmlファイルに、 <script type="text/javascript" src="http://hogehoge.com/sample/index.php? param=0"></script> みたいなタグを記述して、HTMLファイルを呼び出したいと考えています。 いろいろサイトをググってみたら下記のようなソースをみつけました。 <?php $param = $_GET['param']; header("Content-type: application/x-javascript"); if ($param == '0') { echo "document.write(\"WEB Artisan\")"; } else { echo "document.write(\"RESTARTSYSTEM\")"; } ?> これを実装すると、「WEB Artisan」が出力されるようになったのですが、ここをhtmlファイルにするにはどうすればいいのでしょうか。 非常に初歩的な質問かもしれませんが、ご指導の程、よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHPからjavascriptへの変数の受け渡し

    javascriptからPHPを経由して他のサイトのページソースを文字列の変数として取得することを考えています。今回はそれに先立ちとりあえずページソースを取得表示するプログラムを作ってみました。 環境はローカルサーバー内の同じフォルダに以下の二つのファイルを作成しました。 ↓display_XML.html ---------------------------------------- <script language="JavaScript"> var request=new XMLHttpRequest(); request.open("GET","get_XML.php",false); request.send(null); </script> ---------------------------------------- ↓get_XML.php ---------------------------------------- <?php $context = (省略) $res = urldecode(file_get_contents('http://(省略)',false,$context)); echo $res; ?> ---------------------------------------- この状態でdisplay_XML.htmlにアクセスしても何も表示されませんでした。もしかしてゲットに対するレスポンスとして何か帰ってきているかと思いrequest.responseTextの中を見てみましたが、get_XML.phpがそのまま入っているだけでした。ちなみに直接get_XML.phpにアクセスした場合はちゃんとページソースを表示してくれます。 また、今回webアプリの作成は初めてなのでなるべくすでに用意されたライブラリの使用は避けたいと考えています。どうかよろしくお願いします。 また、冒頭でも書いたように、最終的にはjavascript内に文字列として取り込むことを考えています。 その場合はget_XML.phpの最後のコードを echo 'var a='.$res.';' のように記述することで実現できますでしょうか?もしくは他にふさわしい方法がありますでしょうか?合わせてご回答いただけると幸いです。

    • ベストアンサー
    • PHP
  • HTML→PHPへ値を渡して再びHTMLに結果出力

    HTMLからPHPへ値を渡して、再びHTMLに結果を表示したいと思っています。 以下のような簡単なコードを書いてみましたが、HTMLのページに"OK"という文字が表示されません。 PHPのパーミッションは755でやっており、PHPが動作するサーバーでテストしています。 どう修正すれば良いのか、アドバイスをお願い頂けますでしょうか? どうぞよろしくお願い致します。 【HTML】 <html> <head> </head> <body> </body> <script type="text/javascript" src="http://xxx.com/test/jsphptest.php?param=1"></script> </html> 【PHP】 <?php $param = $_GET['param']; header("Content-type: application/x-javascript"); if ($param == '1') { echo "document.write(\"OK\")"; } else { echo "document.write(\"NG\")"; } ?>

    • ベストアンサー
    • PHP
  • Javascriptの関数をPHPで作りましたが戻値を得る方法がわかりません。

    はじめまして。xpにxamppの環境で利用してます。 PHPをjavascriptの関数に出来ると知り、 geturl.php <?php header("Content-type: application/x-javascript"); echo "function picturl() {"; ~ MySQLを特定の条件で検索し、画像の保存先URLを$urlへ格納 ~ echo "}"; ?> showpict.html <html> <head> <meta http-equiv="content-type" content="text/html;charset=shift_jis"> <title>photo</title> <script type="text/javascript" src="geturl.php"></script> <script type="text/javascript"> ~以下でたとえば、  var url = picturl(); とすれば url に 値が入るかと思って作成して見ました。 PHPの$urlには、 ./data/001.png のような値が入ります。 私が参考にしたPHP文では戻値は変数ではなく生のテキストで echo "document.write(\"文章\")"; となっており、これは実行できました。 変数を使用して上記のような値を求めようとしたところ、 echo "document.write(\"$url\")"; echo "retuen $url"; などを試してみましたがうまくいきません。 この様な方法では利用できないものなのでしょうか?。 それともecho文が以外の方法で行うものなのでしょうか?。 よろしくご協力のほどお願いいたします。

    • ベストアンサー
    • PHP
  • adsenseをjavascriptで出力したい

    お世話になります。 以下の構文が記載されたPHPをhtmlからjavascriptにて呼び出してます。 が、うまく広告が表示されずに困っています。 PHPを直接叩き、document.write等を削除したものを 直接htmlに貼り付ければ、広告は表示されます。 広告が表示されない原因としては、adsenseのscript内でinframeを作成しているのですが その歳のwidth,heightが0になってしまっているようです。 しかし、なぜその値が渡せていない?のかが解らずハマっています。 <?php header("Content-type: application/x-javascript"); echo "document.write(\"<div align='center'>\")\n"; echo "document.write(\"<p>\")\n"; echo "document.write(\"<script type='text/javascript'><!--\")\n"; echo "document.write(\"google_ad_client = 'hogehogeID';\")\n"; echo "document.write(\"/* 200*200 */\")\n"; echo "document.write(\"google_ad_slot = 'slotnumber';\")\n"; echo "document.write(\"google_ad_width = 200;\")\n"; echo "document.write(\"google_ad_height = 200;\")\n"; echo "document.write(\"//-->\")\n"; echo "document.write(\"</script>\")\n"; echo "document.write(\"<script type='text/javascript'\")\n"; echo "document.write(\"src='http://pagead2.googlesyndication.com/pagead/show …\")\n"; echo "document.write(\"</script>\")\n"; echo "document.write(\"</p>\")\n"; echo "document.write(\"</div>\")\n"; ?> adsenseコード中にコメントが使用されているのですが このあたりが怪しいと思いますが・・・ 博識な方、よろしくお願い致します。

  • javascriptとphpの連携で疑問

    javascriptの変数をphpに渡すプログラムを、ネットを参考にして次のようなものを作りました。 ●クライアント側 (index.html) <html> <head> </head> <body> <script type="text/javascript" src="j2p.php?parm=1"></script> </body> </html> ●サーバー側 (j2p.php) <?php $parm = $_GET['parm']; header("Content-type: application/x-javascript"); if ($parm == 1) { echo "document.write('1ですよ')"; } else { echo "document.write('1じゃないですよ')"; } ?> 上記は問題なく動作するのですが、サーバー側のプログラムを、次のように 変更し、直接$parmを出力しようとすると何も表示されません。 ●サーバー側 (NG1) <?php $parm = $_GET['parm']; header("Content-type: application/x-javascript"); echo "document.write('<?php echo $parm; ?>')"; ?> どこか、考え方が根本的に間違っているのかも知れませんが、この問題で ずっと悩んでおり、先に進めない状態です。 上記プログラムのおかしな点、改善点など、アドバイスよろしくお願い いたします。

  • adsense広告がphp出力できない

    お世話になります。 以下の構文が記載されたPHPをhtmlからjavascriptにて呼び出してます。 が、うまく広告が表示されずに困っています。 PHPを直接叩き、document.write等を削除したものを 直接htmlに貼り付ければ、広告は表示されます。 広告が表示されない原因としては、adsenseのscript内でinframeを作成しているのですが そのさいのwidth,heightが0になってしまっているようです。 しかし、なぜその値が渡せていない?のかが解らずハマっています。 <?php header("Content-type: application/x-javascript"); echo "document.write(\"<div align='center'>\")\n"; echo "document.write(\"<p>\")\n"; echo "document.write(\"<script type='text/javascript'><!--\")\n"; echo "document.write(\"google_ad_client = 'hogehogeID';\")\n"; echo "document.write(\"/* 200*200 */\")\n"; echo "document.write(\"google_ad_slot = 'slotnumber';\")\n"; echo "document.write(\"google_ad_width = 200;\")\n"; echo "document.write(\"google_ad_height = 200;\")\n"; echo "document.write(\"//-->\")\n"; echo "document.write(\"</script>\")\n"; echo "document.write(\"<script type='text/javascript'\")\n"; echo "document.write(\"src='http://pagead2.googlesyndication.com/pagead/show_ads.js'>\")\n"; echo "document.write(\"</script>\")\n"; echo "document.write(\"</p>\")\n"; echo "document.write(\"</div>\")\n"; ?> よろしくお願い致します。

    • ベストアンサー
    • PHP
  • PHPでjavascriptを表示する方法

    すみません。javascriptの事はほとんど分からないのですが、 phpを使ってjavascriptを表示したいのですが基本的な部分で分かりません。 例えば <?php echo"<script>document.write(\"PHP!\")</script>;" ?> は簡単にできますが、タグに入っているjavascriptはどうやってphpで表示させるのでしょうか? <form name="aaa" method="post" action="bbb.php"> <select name="ccc" onChange="document.forms['aaa'].submit()" > <option value="111">111</option> <option value="222">222</option> </select> </form> 上記のスクリプトを単純にphpで表示したいのですが、どうやってもphpで囲むとonChangeが動かず 動的にはなりません。 何時間もぐぐったりしてますが解決しません。タグの中のjavascriptは直接phpでは動かせないのでしょうか?

    • ベストアンサー
    • PHP
  • Javascript から PHP を呼び出したい

    お世話になります。 html 内の Javascript から PHP を呼び出して表示したいと思っています。 ローカル環境で試したところ表示されたのですが、借りている lolipop のサーバへアップしてみたところ表示されませんでした。 何か固有の設定や根本的に間違っている!などありましたらご教示いただけないでしょうか。 以下、試した内容です。 test.html を実行し a.php を呼び出して表示したいです。 ローカルでは test.html を読み込むと [aaa] と表示されたのですが・・・。 [test.html] <html> <head></head> <body> <script type="text/javascript" src="http://example.com/a.php"></script> </body> </html> [a.php] <?php header("Content-type: application/x-javascript; charset=UTF-8"); echo "document.write(\"aaa\")"; ?>

    • 締切済み
    • PHP
  • Javascriptの変数をPHPに渡したい

    環境  サーバLinux、Apache2.0.47、PHP4.3.2で使用しています 質問  リンク元の取得のためgetenv("HTTP_REFERER")を使っていますが情報が取得できません。  クライアント側のファイアウォール(ノートンなど)が無効になっているときにしか情報が取得できませんでした。  Javascriptのdocument.referrerを使ったところ、ファイアウォール関係なく情報が取得できました。  ログ保存のためにPHPの変数にdocument.referrerを渡したいのですがどのようにすればよいのでしょうか?  下のように書いたところブラウザには正常に表示されましたが、  ログはJavascriptの制御文そのものが保存されました。  $link="<SCRIPT language='JavaScript'><!--    document.write(document.referrer);    --></SCRIPT>"; よろしくお願いします。

    • ベストアンサー
    • PHP

専門家に質問してみよう