2011-05-13 113 views
-1

我在窗體中添加了一個窗體(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']是空的。這怎麼可能?我究竟做錯了什麼?

+0

在這裏寫代碼:多行:打算每行至少4個空格。對於內聯代碼,用'='test'包裝你的代碼 – 2011-05-13 10:16:53

+0

哇,是不是這一天的問題 – Starx 2011-05-13 10:17:04

+0

@DiegoP,在右邊,當你提出問題或編輯問題時,是關於編寫有效問題的信息。 – Starx 2011-05-13 10:18:58

回答

0

這是一個emtry字符串,因爲您發送的是空字符串。看這句話你貼:

$.getScript('/updateTimeZone.php?timezones='); 

你可能忘了給你想成爲有這樣的時區:

$.getScript('/updateTimeZone.php?timezones=THE_TIMEZONE'); 

替換THE_TIMEZONE你要設置的時區...

+0

抱歉,但這不是問題。選擇框中的值在那裏。它不能正常工作,因爲代碼是錯誤的。我不是一個有經驗的程序員,我只是玩代碼。我知道某些時候最困難的事情,在其他一些時候我不知道最簡單的事情。這是我的問題。謝謝 – 2011-05-13 21:17:36

+0

@Diego:問題是您在服務器呈現頁面時創建時區的值。用戶選擇的值是_ignored_。分析情況並考慮在哪些時間執行代碼的哪些部分 - 服務器何時發送頁面,何時與用戶交互。 – Arsen7 2011-08-08 08:54:55