• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPとJavascriptの連携)

PHPとJavascriptの連携についての質問

このQ&Aのポイント
  • PHPの側でCSVファイルからデータを読み込み、そのデータをJavascriptに渡して表示する方法について質問です。
  • 質問のコードでは、CSVファイルのデータを配列に格納し、Javascriptで表示するためのカウンターを使用していますが、うまく動作しません。解決方法を教えてください。
  • 質問では、PHPとJavascriptの連携についての問題を詳しく説明しており、サンプルコードを提供しています。

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

  • ベストアンサー
  • calltella
  • ベストアンサー率49% (317/635)
回答No.1

PHPとJavascriptは全くの別物なので同じ変数を使っても意味はありません。 Javascriptデータを渡したいのであればPHPでJavascriptコードと共に 変数を書き込んだHTMLを吐き出させれば一番簡単だと思います。

nice-chap
質問者

お礼

イメージしていたことを実現することができました。 ありがとうございました。

nice-chap
質問者

補足

お返事ありがとうございます。 ちょっとまだ完全に理解できていないかもしれませんが、 PHPで読み込んだCSVファイルのデータ(配列のデータ)を Javascriptに渡すことは不可能ですか?

その他の回答 (1)

  • calltella
  • ベストアンサー率49% (317/635)
回答No.2

元のコードを元に作ったコードです。 ファイルの内容の一番目しか表示しませんがコードを修正してみました。 後はご自分で勉強して修正してください。 <?php $fp = fopen("test.csv", "r"); //CSVファイルを開く $count = 0; //カウンターを初期化する while(!(feof($fp)))//ファイルの終端まで読み込む { $buf = fgets($fp, 1024); $buf = chop($buf); //文末にある改行文字を削除する $data = split(",", $buf); // , ごとに区切って配列に格納する $question[$count] = $data[0]; //question[]配列に$data[0]を格納する $answer[$count] = $data[1]; //answer[]配列に$data[1]を格納する print $question[$count]."<br>"; $count++; //カウンターを1進める } fclose($fp); ECHO "<script language=\"Javascript\">\n"; ECHO "question = new Array(".(count($question)-1).")\n"; for ($i=0;$i<=(count($question)-2);$i++){ ECHO "question[".$i."]='".$question[$i]."'\n"; } ?> function disp() { document.myform.mytext.value = question[0]; } </script> <form name="myform" > <input name="mytext" type="text"><br> <input name="mybutton" type="button" value="click" onclick="disp()"> </form>

関連するQ&A

専門家に質問してみよう