我正在尝试在用户离开我的网站时运行一个快速的 php 脚本,并将一个变量从我的 javascript 传递到 php,但我不太确定如何包含 php 文件并将其传递给 var。但它实际上并没有运行 php 脚本。有什么想法吗?
(javascript 从外部事件函数获取用户名,我知道我在警报上测试了 var,它在那里。)
我的 JavaScript:
<script language="javascript" type="text/javascript">
var username = null;
function GetUsername(usernameff)
{
username = usernameff;
}
window.onbeforeunload = function ()
{
if (username != null)
{
<?php include("scripts/RemoveUserOnDisconnect.php?username=username");?>
}
}
</script>
我的 RemoveUserOnDisconnect.php 文件:
<?php
mysql_connect("mysql.mysql.com", "username", "password");
mysql_select_db("my_db");
mysql_query("DELETE FROM my_table WHERE username = '$username'");
?>
最佳答案
尝试 ajax 请求。根据您的 php 脚本,您将需要 $.post
或 $.get
jQuery:
<script language="javascript" type="text/javascript">
var username = null;
function GetUsername(usernameff){
username = usernameff;
}
window.onbeforeunload = function(){
if (username != null){
$.post('scripts/RemoveUserOnDisconnect.php', {username: username}, function(){
//successful ajax request
}).error(function(){
alert('error... ohh no!');
});
}
}
</script>
编辑:
如果您使用我上面的代码,您的 php 脚本应该引用 $_POST
数组。
<?php
$username = $_POST['username'];
mysql_connect("mysql.mysql.com", "username", "password");
mysql_select_db("my_db");
mysql_query("DELETE FROM my_table WHERE username = '$username'");
?>
关于php - 在 javascript 中执行 php 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5227132/