私はこの問題を抱えており、何が原因なのかわかりません。www.something.tld/index.html から ajax スクリプトを ajax するためにデータをロードすると、問題ありません。しかし、最初にdbからデータを取得し、次にこのデータをエコーするscript.phpからデータをロードすると、私のajaxはエラーで終了します。しかし、データ出力は同じです!どうしたの?
例: index.html の出力は "XXX" script.php の出力は "XXX" ですが、私のスクリプトでは次のようにデータを生成します。
echo $data[0]->var;
なぜこれが起こるのか分かりますか?これは、db からデータを取得してからエコー出力したときに発生します。
Internet Explorer は次のように述べています: ttm/canvas.1.03.jgz の構文エラー 281 行目、文字 163 ここに jgz のリンクがあります http://www.freefilehosting.net/canvas103
PHP ajax で anz 関数を使用すると、出力が正しく解析されないことがわかりました。これは問題なく解析されます:
$from ='05/17/2012 10:15:00';
$to ='05/17/2012 10:30:00';
$day ='5/17/2012';
echo '{ "dtstart": "'.$from.'", "dtend": "'.$to.'", "day": "'.$day.'" },';
これは正しく解析されません:
$from= preg_replace('/[\x00-\x1F\x80-\xFF]/', '',$data[0]->time_from);
$to = preg_replace('/[\x00-\x1F\x80-\xFF]/', '',$data[0]->time_to);
$day = preg_replace('/[\x00-\x1F\x80-\xFF]/', '',$data[0]->day);
$from ='05/17/2012 10:15:00';
$to ='05/17/2012 10:30:00';
$day ='5/17/2012';
echo '{ "dtstart": "'.$from.'", "dtend": "'.$to.'", "day": "'.$day.'" },';