みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

PHP javascript の関係に関して

現在、MySQLよりPHPを用いてデータを取得し、PHPのある変数にデータを格納しています。

その結果を、javascriptの中でデータとして使用したいと考えていますが、そもそもPHPで格納されている変数をjavascriptの中で使用する事は可能なのでしょうか。。。

//例ですが、
 
$sql = "select aaa from AAA";
if (!mysql_select_db('db', $con)) {
echo 'Could not select database';
exit;
}

mysql_query("set names sjis");

$result = mysql_query($sql,$con);
$row = mysql_num_rows($result);

$count = 1;
for($i=0;$i<$row;$i++) {
$array = mysql_fetch_array($result);
$tmp_aaa[$count] = $array[0];
$count++;
}

<script type="text/javascript">
<!--
msgtxt = new Array();
for (i=0; i<3; i++){
msgtxt[i] = new Array();
}

$count = 0;
for($i=0;$i<$row_naiyou;$i++) {
$msgtxt[$count] = $tmp_aaa[$count];
$count++;
}

というような形です。

javascript自体、php> ?>の中に囲まれていれば問題ないのでしょうか?

初歩的な質問で申し訳ありませんが、教えて下さい。

投稿日時 - 2007-03-02 11:25:03

QNo.2796064

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

PHPの配列を、JavaScriptの配列に
ひとつずつ 値を代入しています。

例えば
// 配列の宣言
var week = new Array(7) ; '0~6の7要素を持つ配列が作成されます。

// 要素への代入
week[0] = "sun" ;
week[1] = "mon" ;
week[2] = "tue" ;
week[3] = "wed" ;
week[4] = "thu" ;
week[5] = "fri" ;
week[6] = "sat" ;

のJavaScirptを PHPで配列から値を与えるために
week[0] = "<?php ehco $Week[0] ?>";
と書いてもいいし
<?php
echo 'week[0] = "' . <?php ehco $Week[0] ?> . '";';
?>
と書いても大丈夫です。

配列の個数が決まっていればその数だけ
1行ずつ書いていけばいいのですが
決まっていないとすると For 分でJavaScript
の配列を作成します。

参考URL:http://www.site-cooler.com/kwl/javascript/5.htm

投稿日時 - 2007-03-02 16:13:20

補足

すみません。

もう1度確認させて下さい。

<script>
<!--
var tmp_aaa = New Array();

<?php
for ( $i = 1; $i < $count; $i++ ){
print "tmp_aaa[i] = '" . $tmp_aaa[i] . "';";

↑この部分でPHPの配列からjavascriptの配列へ
格納しているという事でしょうか???

}
?>
-->
</script>

何度も申し訳ありません。 教えて下さい。

投稿日時 - 2007-03-02 19:00:28

ANo.1

初歩的な回答として、JavaScriptをPHPでコーディングするという
方法で可能かと思います。

以下のコードは、PHPの配列をJavaScriptの配列にコピーしています
<script>
<!--
var tmp_aaa = New Array();

<?php
for ( $i = 1; $i < $count; $i++ ){
print "tmp_aaa[i] = '" . $tmp_aaa[i] . "';";
}
?>
-->
</script>

この結果、
--------------------------------------------
<script>
<!--
var tmp_aaa = New Array();

tmp_aaa[1] = 'ABC';
tmp_aaa[2] = 'DEF';
tmp_aaa[3] = 'GHI';
}
?>
-->
</script>

投稿日時 - 2007-03-02 12:56:22

補足

大変申し訳ありません。

初心者である為、教えて頂いた記述に解説を付けて頂けると
非常に助かります。。。

お願いします。

投稿日時 - 2007-03-02 14:32:01

あなたにオススメの質問