私はこれまでにこれほど奇妙なものに遭遇したことはありません。jQuery を使用して Ajax リクエストを発行し、mysql から値を取得します。
$.ajax({
url: 'ajaxClassificationCheck.php?category='+category,
cache: false,
success: function(returnClass)
{
$("#classification").val(returnClass);
}});
そしてphp...
include_once ('functions.php');
connectdb();
$category = $_GET['category'];
$q = "SELECT classification_id FROM sch_category WHERE category_id = $category";
$r = mysql_query($q) or die (mysql_error());
$row = mysql_fetch_assoc($r);
$classification = $row['classification_id'];
echo $classification;
ネットワーク キャプチャの結果は、空である ajax 要求からの出力を示しています。
私が変更した場合:
echo $classification;
に
echo "result is $classification";
出力:
result is 2
また、以下でも機能します。
echo "a".$classification;
出力:
a2
Ajax 経由で返される文字数に最小文字制限はありますか?
編集
ご提案いただきありがとうございます
@RocketHazmat - dataType: 'text' を試しましたが、まだ単一の整数が返されません。間違いなく echo $classification; を使用します。
@dualed - URL をブラウザ ウィンドウに入力すると、正しい整数応答が得られるため、ajax に問題があります。
他のアイデアはありますか?