2011-05-13 115 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