jquery-ajax を使用してデータベース内の特定の変数を検索し、それを返したので、html ページに追加できました。データベースで検索するphpファイルは
$q="SELECT abc FROM xyz where axb='".$_GET['var']."'";
$sql = mysql_query($q) or die(mysql_error());
$row = mysql_fetch_array($sql);
$temp=$row['company'];
$k['na'] = $temp;
echo json_encode($k);
?>
次の URL を使用しようとすると、このファイルは正しい出力を示しています。
{"na":"マイクロソフトコーポレーション"}
しかし、それを解析してdivに追加する必要があるjqueryはnullを返していますこれがコードです
function name() {
$.ajax({
type: 'GET',
async: false,
dataType: "json",
url: dir + 'name.php?tick=' + $("#tickerid").val(),
success: function(name) {
alert("hello");
alert(name['na']);
$("#nam").html('<p>' + name['na'] + '</p>');
}
});
}
しかし、$row['']; の代わりにファイルに文字列を配置すると、
$temp=$row['company'];
//$k['na'] = $temp;
$k['na'] = "Microsoft";
echo json_encode($k);
URL 出力は同じ {"na":"Microsoft"} であり、jquery はそれを html に追加することに成功しています。
PHPは variable と string の両方に対して同じものを返すので、それを取得しようとしている私のjqueryコードの何が問題なのですか??