J'ai un formulaire dans une visionneuse (fancybox). J'essaie de faire un ajax pour lancer une mise à jour de la base de données. Mais je ne sais pas pourquoi ça ne marche pas. Le code ci-dessous est ce qui est dans la lightbox:php, jQuery, Lightbox, Ajax GET et le post 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>
C'est ce que j'ai dans le fichier appelé:
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');<?
}
?>
Tout semble bien quand je clique sur le bouton de confirmation. Pas d'erreurs Mais quand je regarde dans la base de données, il enregistre une chaîne vide. $ _GET ['fuseaux horaires'] est vide. Comment est-ce possible? Qu'est-ce que je fais mal?
pour écrire du code ici: multiligne: entend chaque ligne au moins 4 espaces. Pour le code en ligne entourez votre code avec '=' test' –
Wow, n'est pas cette question du jour – Starx
@DiegoP, sur le côté droit, alors que vous posez votre question ou la question d'édition sont les informations sur l'écriture de question efficace. – Starx