如何将JavaScript输出作为POST请求传递给PHP?[使用js获取TZ,然后发送到mySQL]
如何将JavaScript输出作为POST请求传递给PHP。[使用js获取TZ,然后发送到mySQL] 使用如何将JavaScript输出作为POST请求传递给PHP?[使用js获取TZ,然后发送到mySQL],javascript,php,mysql,ajax,codeigniter,Javascript,Php,Mysql,Ajax,Codeigniter,如何将JavaScript输出作为POST请求传递给PHP。[使用js获取TZ,然后发送到mySQL] 使用 AJAX将是未来的发展方向。如果您感到害怕,最好从jQuery开始。你可以这样做 var data = new Object(); data.tz = timezone.name(); $.post("ajaxendpoint.php", data, function() { // do something after ajax com
AJAX将是未来的发展方向。如果您感到害怕,最好从jQuery开始。你可以这样做
var data = new Object();
data.tz = timezone.name();
$.post("ajaxendpoint.php",
data,
function() {
// do something after ajax completes if you want
});
在ajaxendpoint.php
中,您可以获得时区:
<?php
$timezone = $_POST['tz'];
使用ajax和jQuery,您可以这样解决:
function sendInfo() {
var timezone = jstz.determine();
$.ajax({
url: "myScript.php", // URL of your php script
type: "post",
data: {timezone: timezone.name()},
success: function(data) {
alert("success");
}
});
};
<?php
$timezone = $_POST['timezone'];
...
然后将此函数绑定到某个按钮。在php文件(myScript.php)中,可以得到如下值:
function sendInfo() {
var timezone = jstz.determine();
$.ajax({
url: "myScript.php", // URL of your php script
type: "post",
data: {timezone: timezone.name()},
success: function(data) {
alert("success");
}
});
};
<?php
$timezone = $_POST['timezone'];
...
在page.php文件中
<?php
$tz = $_POST['timezone'];
//Do other thing to store timezone in database
?>
根据您的更新,您应该有一个隐藏的表单字段:
然后,您可以通过编程方式添加时区:
<script>
var timezone = jstz.determine();
// set the value of your hidden timezone field to the correct value
document.getElementById('tz').value = timezone.name();
</script>
var timezone=jstz.determine();
//将隐藏时区字段的值设置为正确的值
document.getElementById('tz')。value=timezone.name();
当您希望在不刷新页面的情况下将客户端数据发送到服务器时,您总是需要使用ajax/通过将数据作为表单提交到数据下的submitWouldnbe{timezone:timezone.name()}
?而不是时区
,因为name()方法输出时区的实际值。或者您可以简单地使用jQuery$(“myButton”)。单击(function(){})并将ajax代码放入该函数中。我查找了.bind()jQuery方法。我决定做的是在submit按钮中添加一个ID,并使用.bind():$('#submit').bind('click',sendInfo())
我测试了它,我注意到,即使我没有单击submit,也会弹出成功
,这应该发生吗?你必须从定义中删除括号$(#提交”).bind(“单击”,发送信息);否则,您的函数将在加载这一行代码时立即启动,而不是在您实际单击按钮时启动。这比ajax方法简单得多。你认为哪一个最方便?我希望我能把你所有的答案都收集起来。在编辑之前,假设你只想把时区发送到服务器,并且它会异步发生(不需要重新加载页面)。但是,如果您已经同步提交表单,则不需要使用AJAX。它们都非常方便和容易,但是在这个例子中AJAX没有意义。不过,请阅读AJAX,它被广泛使用,可以提供更好的用户体验。不要被它吓倒,它和常规的GET和POST请求一样,只是删除页面重新加载。