我在窗體中添加了一個窗體(fancybox)。 我正在嘗試做一個Ajax運行到數據庫的更新。 但我不知道爲什麼它不起作用。 下面的代碼是什麼在燈箱:php,jQuery,Lightbox,Ajax GET和POST問題
<div id="timezonelightbox">
<div class="lightboxtitle">Select Time Zone</div>
<form method="get" action="" >
<select name="timezones" id="timezones" class="selecttimezones">
<option value="Africa/Abidjan ">Africa/Abidjan </option>
<option value="Africa/Accra ">Africa/Accra </option>
<option value="Africa/Addis_Ababa ">Africa/Addis_Ababa </option>
<option value="Africa/Algiers ">Africa/Algiers </option>
<option value="Africa/Asmara">Africa/Asmara</option>
</select>
<input type="button" id="confirmtimezone" class="confirmtimezone" value="Confirm now"
onclick="updateTimeZone(); $.fancybox.close();">
</form>
</div>
<script type="text/javascript">
function updateTimeZone(){
$.getScript('<?echo $site["url"];?>/updateTimeZone.php?timezones=<?echo $_GET["timezones"]?>');
}
</script>
這是我在調用的文件:當我點擊確認按鈕
header("content-type:text/js");
if(isset($_GET['timezones'])){
$queryupdatetimezone="UPDATE `Profiles` SET `TimeZone` ='".$_GET['timezones']."' WHERE
ID=".(int)$_COOKIE['memberID'];
$resultupdatetimezone=mysql_query($queryupdatetimezone) or die("Errore update default timezones: ".mysql_error());
exit;
}else{
?>alert ('An error occured');<?
}
?>
似乎一切都很好。沒有錯誤。但是當我查看數據庫時,它會保存一個空字符串。 $ _GET ['timezones']是空的。這怎麼可能?我究竟做錯了什麼?
在這裏寫代碼:多行:打算每行至少4個空格。對於內聯代碼,用'='test'包裝你的代碼 – 2011-05-13 10:16:53
哇,是不是這一天的問題 – Starx 2011-05-13 10:17:04
@DiegoP,在右邊,當你提出問題或編輯問題時,是關於編寫有效問題的信息。 – Starx 2011-05-13 10:18:58