php转换为javascript并返回
php to javascript and back
我有一个php文件,它生成一些html并执行一些数据库查询。还有一些switchcase语句。在一个特定的情况下,我需要向用户发送一些对话框。如果用户按OK,我需要进行一些数据库查询,如果用户按cancel,我不需要。所以我决定回显一个JavaScript代码片段,其中包含一个confirm语句。那么,我如何从JavaScript将确认消息的结果发送回php,并决定是否进行数据库查询。
<?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']
总是空的。有人知道为什么吗?
您在文件名中不加引号。
Javascript不知道它是包含文件名的字符串,它认为它是一个名为filename
、属性为php
的对象实例。
ajax.open("POST", "filename.php" ,true);
不要用这种方式混合PHP和JS,。。。它们是完全不同的语言,服务器端、客户端,。
以一种不用PHP就能工作的方式构建Javascript。
然后让PHP注入一些配置使用:
<script>
var config = <?php json_encode($phpToJs); ?>;
</script>
调用ajax.open();
时,尝试在url中传递参数
示例:filename.php?userChoice=false
交换机状态中缺少break;
和default
相关文章:
- 连续两页返回Javascript
- 返回Javascript中字符串的特定部分
- 返回 JavaScript 类值而不是对象引用
- 返回JavaScript函数中的值
- 基本否则如果并返回JavaScript
- 如何让php“json_encode”返回Javascript数组而不是Javascript对象
- 函数内部的函数vs函数返回JavaScript中的函数
- 返回Javascript中给定正则表达式的文本范围数组
- 返回javascript中regex字符串的一部分
- 返回javascript对象中的最大值
- AJAX请求返回Javascript获胜't返回特定函数,但将返回其他函数
- 检测数组的所有函数何时返回:javascript
- 函数,返回javascript中两个字符串数组的差值
- 返回javascript数组中具有最低值的对象
- 返回javascript中最匹配的数组项
- 试图理解返回javascript方法的服务器响应
- 获取 Checked Checbox 的值返回 JavaScript/ASP.NET VB 中未定义的值
- 如何在金字塔/塔中返回 JavaScript
- 返回 javascript 中数组的数字
- 返回 JavaScript 对象警报“未定义”