我目前正在爲學校招生開發一個簡單的學生日程安排應用程序。我爲學生制定了兩張學科課程表和預留科目表。對於時間表主題1.科目代碼與Pk sched_id和預留科目代碼FK subid,日,實驗室,講座時間,實驗室時間。當用戶從計劃中選擇主題時,它將插入到reservsub。我需要檢查每個選定主題的日/實驗時間/實驗室時間衝突的功能。例如:檢查時間/日期衝突php
用戶選擇主題與TTH上午9:00 - 至11:00每天lectime 而在reservetable它具有周四上午10:30 - 12:30一天lectime
如何建立一個腳本和/或功能,會警告用戶,它在PHP中有時間衝突?
預先感謝您。
這裏顯示的代碼在主題選擇tblreserv將驗證該數據的已保存的時間表和選擇
$sql = mysql_query("SELECT * FROM tblsubjecschedule where Sem='".$_SESSION['sem']."' and Schoolyear='".$_SESSION['Sy']."' order by Subject")or die(mysql_error());
$i=0;
$b =1;
while($row=mysql_fetch_assoc($sql)){
echo "<tr ><td align=' '><input id='send' name='reserv[$i]' type='image' src='images/Select.gif' onclick='addRow('myTable')' /> </td>
<td align=' '>".$row['Subject']."<input type='hidden' name='subj[$i]' value=".$row['Subject']."><input type='hidden' name='control[$i]' value=".$row['sched_id']."></td>
<td align=' '>".$row['section']." </td>
<td align=' '>".$row['Lec']."-".$row['Lab']." </td>
<td align=' '>".$row['Descriptive']." </td>
<td align=' '>".$row['Day']."<br/>".$row['Labday']." </td>
<td align=' '>".$row['LecTime']."<br/>".$row['LabTime']." </td>
<td align=' '>".$row['Room']."<br/>".$row['Labroom']." </td>
<td align=' '>".$row['capacity']." </td>
<td >".$row['Slot']." </td>
</tr>";
$i++;
}
if (isset($_POST['reserv'])){
if(!empty($_POST['reserv'])){
$a = current(array_keys($_POST['reserv']));
$control=$_POST['control'][$a];
}
}
$sql = mysql_query("SELECT * FROM tblsubjecschedule where sched_id='".$control."' and Sem='".$_SESSION['sem']."' and Schoolyear='".$_SESSION['Sy']."'");
while($row=mysql_fetch_assoc($sql)){
$cont=$row['sched_id'];
$sub=$row['Subject'];
$sec=$row['section'];
$lecture=$row['Lec'];
$laboratory=$row['Lab'];
$day=$row['Day'];
$daylab=$row['Labday'];
$lectime=$row['LecTime'];
$ltime=$row['LabTime'];
$room=$row['Room'];
$roomlab=$row['Labroom'];
$slot=$row['Slot'];
$caps=$row['capacity'];
}
,或者它有一個時間衝突
$verify2=mysql_query("Select * from tblsubjectreserv where stud_id='".$maxid."' and subject='".$sub."'")or die(mysql_error());
$ver=mysql_num_rows($verify2);
if($ver!=0){
echo '<script language="javascript">alert("This Subject already exists.");</script>';
}
else{
$insert2=mysql_query("insert into tblsubjectreserv (sublink,stud_id,subject,section,Unitlec,Unitlab,timelec,timelab,daylec,Daylab,roomlec,roomlab,Sem,schoolyear)values('".$control."','".$maxid."','".$sub."','".$sec."','".$lecture."','".$laboratory."','".$lectime."','".$ltime."','".$day."','".$daylab."','".$room."','".$roomlab."','".$sem."','".$_SESSION['Sy']."')")or die(mysql_error());
}
但我不知道如何驗證日/時衝突。 我只是一個初學者,請幫助我。
預先感謝您
我認爲PDO將是一條冒險的路線,開創性永遠是產生提高代碼效率機會的最佳方法! – 2012-02-03 05:21:07
即時通訊使用wamp5 mysql數據庫和抱歉我缺乏信息。是的,當用戶從日程表中選擇數據時,我使用數據庫來檢查時間衝突。 謝謝你的回覆 – nobito 2012-02-03 05:27:20
對不起,先生我不能理解什麼PDO的意思,因爲即時通訊初學者在PHP希望你能明白 – nobito 2012-02-03 05:29:47