診療時間の開始日と終了日を選択できるカレンダーを作成したいと考えています。このカレンダーは、毎週の標準スキームとして使用されます。例http://www.restaurantterpolder.be/wachtkamer/vast.php
標準では、セルをクリックする場合を除いて、プラクティスは常に閉じられています。次に、これがデータベースに書き込まれます: tbl_open(ID, Weekday, Moment_ID, Doctor_ID)。これは毎週のスキームなので、「日付」の代わりに「平日」を使用します。
一番下のセルを変更すると、リロードのたびにページがジャンプしてしまい、かなり面倒です。そこで、Ajax を使用してセルをリロードできると考えました。
- スクリプトを呼び出すページ上のイベント -> onClick=getInfo(this.id);. これは、ハイパーリンクをクリックしたときに呼び出す必要があります。- xml ファイルからコンテンツを取得できる js ファイル - 1) データを保存する 2) 新しい日付をロードする 3) xml ファイルを作成する js ファイルから呼び出される php ファイル
私は今のところ正しいですか?
私はこのように始めようとします:
<a onClick="getInfo(this.id);" id="tbl_close_id"><img ... /></a>
アヤックス
var xmlHttp
//gegevens verzamelen om de juiste info uit de database te kunnen halen
function showInfo(str)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="responsexml_calendar.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
//info is uit de database gehaald en wordt nu in het formulier geplaatst
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
xmlDoc = xmlHttp.responseXML;
document.getElementById("class").value = xmlDoc.getElementsByTagName("class")[0].childNodes[0].nodeValue;
document.getElementById("link").value = xmlDoc.getElementsByTagName("link")[0].childNodes[0].nodeValue;
}
}
function GetXmlHttpObject()
{
var objXMLHttp=null
if (window.XMLHttpRequest)
{
objXMLHttp=new XMLHttpRequest()
}
else if (window.ActiveXObject)
{
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
}
return objXMLHttp
}
その日に練習が開いているか閉じているかを確認するPHPファイル:
//SAVE OR DELETE DATA IN DATABASE FIRST (still need to code this)
header('Content-Type: text/xml');
header("Cache-Control: no-cache, must-revalidate");
$query = 'SELECT ID
FROM tbl_open
WHERE ID = '.$q.'
$result = mysql_query($query) or die('foutmelding query ajax');
if (mysql_num_rows($result) > 0)
{
$class = 'class = "normal"';
$link = '<a onClick="getInfo(this.id);" id="tbl_close_id"><img ... /></a><img src="./img/edit.png" /></a>'. PHP_EOL;
}
else
{
$class = 'class="unavailable"';
$link = '<a onClick="getInfo(this.id);" id="tbl_close_id"><img ... /></a><img src="./img/edit.png" /></a>'. PHP_EOL;
}
echo '<?xml version="1.0" encoding="ISO-8859-1"?>
<info>';
echo "<class>" .$class. "</class>";
echo "<link>" .$link. "</link>";
echo "</info>";
?>