この質問が重複していることは承知していますが、これについて何か助けていただければ幸いです。PHP配列をjsに送信する唯一の方法は、jsonでエンコードすることです。私はそれを試しましたが、何も機能しません。これが私のコードです:
<?php
Header("content-type: application/x-javascript");
error_reporting(E_ERROR | E_WARNING | E_PARSE);
$months = Array();
$months = ['January'=>array(), 'February'=>array(), 'March'=>array(), 'April'=>array(), 'May'=>array(), 'June'=>array(), 'July'=>array(), 'August'=>array(), 'September'=>array(),
'October'=>array(), 'November'=>array(), 'December'=>array() ];
// Connect to MySQL
if ( !( $database = mysql_connect( "localhost",
"root", "" ) ) )
die( "Could not connect to database </body></html>" );
// open Events database
if ( !mysql_select_db( "Events", $database ) )
die( "Could not open Events database </body></html>" );
foreach($months as $month => $arr) {
$result = mysql_query("SELECT * FROM posted_events WHERE Month_ = '$month' ")
or die ('Error updating database because: '.mysql_error());
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$months[$month][] = $row['DayNum'];
}
}
echo "var months = jQuery.parseJSON('$months');";
<?php
では、JS 配列変数 'months' には、PHP の配列変数にあったすべての要素が含まれているはずですよね? うまくいきません。何が悪いのかわからない。助けてください?この配列を外部 JS ファイルで使用して、プログラムでさらに作業を行う必要があるため、これは非常に重要です。みんなありがとう。