サーバに.phpファイルがあります。私はそれが取得したロックに応じて1または2の値を送信します。しかし、私はJavascriptでサーバーレスポンスを使用することができません。私はinnerHTMLを使用してみましたが、私はその値を使用する方法がわかりません。私はAJAXにとって全く新しいので、私が作った可能性のある愚かな間違いを許してください。AJAXでサーバレスポンスを使用できません
の.phpファイル
<?php
$fp1=fopen("a1.jpg","r");
$fp2=fopen("a2.jpg","r");
if(flock($fp1,LOCK_EX))
{
echo "a1 locked";
$ch=1;
}
else
{
flock($fp2,LOCK_EX);
echo "a2 locked";
$ch=2;
}
$response=$ch;
echo $ch;
echo $response;
?>
の.htmlファイル
<html>
<head>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<title>Smart Surveillance Camera</title>
<script language="Javascript">
function loadXMLDoc()
{
var xmlhttp;
xmlhttp=new XMLHttpRequest();
//document.write ("request created");
xmlhttp.onreadystatechange=reload()
{
if(xmlhttp.readyState==4 && xmlhttp.status==200)
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
xmlhttp.open("GET","lock.php",true);
xmlhttp.send();
//document.write (serverResponse);
loadXMLDoc();
}
function reload()
{
document.write();
if(myDiv==1)
document.campicture.src="a1.jpg";
else
document.campicture.src="a2.jpg";
}
</script>
</head>
<body bgcolor="white" onLoad="loadXMLDoc()">
<div id="myDiv">
<center>
<font size==-1>
<h1>SMART SURVEILLANCE CAMERA PAGE</h1>
<img name="campicture" src="founders.jpg" border=1 width=320 height=240 alt="AYS founder's IMAGE"><br />
</font>
</center>
</body>
</html>
onreadystatechangeハンドラを置く場所は間違いなく間違っています。 reload関数または無名関数を使用する必要があります。 – f2lollpll
しかし、私はどのようにサーバーの応答を "1"と比較しますか? – user927774