- ベストアンサー
javascriptの配列をPHPで読み込みたいのですが・・・
javascriptの配列を記述してあるファイル info.js があるとします data = new array(); data[0] = new array("data1","data2","data3"); data[1] = new array("data1","data2","data3"); data[2] = new array("data1","data2","data3"); ・ ・ ・ 上記の文で書かれた配列データを、PHP上で読み込み、新着一覧のような形でhtmlで表示したいのですが、方法が分かりません。 分かる方がいらっしゃいましたら教えて下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
phpに送信するにはPOSTなどの操作が要りますが、 formを利用した例が下記になります。 php側では、$_POST['data']に配列として取得できます <HTML> <HEAD> <TITLE></TITLE> <SCRIPT language="JavaScript"> <!-- data = new Array(3); data[0] = new Array("data1","data2","data3"); data[1] = new Array("data1","data2","data3"); data[2] = new Array("data1","data2","data3"); function mkinput(){ for(var i=0; i < data.length;i++) for(var j=0; j < data[i].length;j++){ make_hidden('data',i,j,data[i][j],'myform'); } } function make_hidden(name,i,j,val,fn){ var q = document.createElement('input'); q.type = 'hidden'; q.name = name+'['+i+']['+j+']'; q.value = val; document.forms[fn].appendChild(q); } // --> </SCRIPT> </HEAD> <BODY onLoad="mkinput()"> <form name="myform" method="post" action="hogehoge.php"> <input type="submit" > </form> </BODY> </HTML>
その他の回答 (1)
- inu2
- ベストアンサー率33% (1229/3720)
PHPはサーバーサイドで動く。 JavaScriptはブラウザ上で動く。 つまり、PHPが動いているときはJavaScriptは動けないし。 JavaScriptが動いているときはPHPは動けない。 どうしてもやりたいっていうのであれば、非同期通信してPHP側(HTTP等で)にJSON投げればいいだけ。 って、新着一覧ならJavaScriptでやればいいだけでは? なぜ JavaScriptでデータを持っているのにPHPにやらせたいの?そのままJavaScriptで処理して表示させたほうが手っ取り早いし、スマートだよ。
お礼
素早い回答ありがとうございます。 携帯ページに表示させるため、JavaScriptは動かないと思い、 どうにか表示させれないかと。 すみません、説明が不足していました。
お礼
非常に参考になるソースの提供ありがとうございました。 解決できそうです。