【发布时间】:2014-09-30 12:18:43
【问题描述】:
我有一个生成一些 html 并执行一些数据库查询的 php 文件。 还有一些 switch case 语句。在一种特殊情况下,我需要向用户发送一些对话框。如果用户按 OK,我需要进行一些数据库查询,如果用户按取消,我不需要。所以我决定回显一个包含确认语句的 JavaScript 代码 sn-p。 那么如何从 JavaScript 将确认消息的结果发送回 php,并决定是否进行 db 查询。
<?php
// some code
switch $_REQUEST['action']
case 'save':
echo '<script type="text/javascript">',
'if (!confirm("text + variables") ) { ajax=new XMLHttpRequest();
ajax.open("POST",filename.php,true);
ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
ajax.send("userChoice=false");
}',
'</script>';
if (!empty($_POST['userChoice'])) {
echo 'got the variable from javascript!'
// do some code
}
但不幸的是,$_POST['userChoice'] 总是空的。
有人知道为什么吗?
【问题讨论】:
-
包含
name="userChoice"的HTML在哪里? -
我需要一个吗?我只想将 ajax.send() 的值传递给 $_POST 变量。
标签: javascript php ajax post