PHP :如何存储 js 调用的返回值
PHP :How to store return value of js call
我有一个函数
function getCalendarData(){
ob_start();
echo "<script type='text/javascript' src='http://splocal/courses/calendar.js'></script>";
$calendarAry = ob_get_contents();
print_r($calendarAry);
return $calendarAry;
}
在这里,我尝试将JS调用的返回值分配给一个变量。 但它不起作用。
正确的方法是什么?
calender.js file
function returnCalenderArray(data){
console.log(data);
document.write(data);
return data;
}
$.ajax({
type: "GET",
url: "http://localhost:8080/privateTraining/getTrainingsJson",
data: { ListID: '1'},
dataType: "jsonp",
success: function(data) {
alert('Hi'+data);
returnCalenderArray(data);
}
});
从技术上讲,你不能从JavaScript调用PHP,至少不能在同一页面上调用。PHP 是服务器端语言,JS 是客户端语言。从 JS 函数调用 PHP 脚本的唯一方法是在后台打开一个新页面(不显示给浏览器)并执行此操作。它被称为AJAX,我建议您在这项技术中进行一些休息。
对于使用AJAX的非常简单的方法,请使用JS框架,例如jQuery。
你可以尝试用PHP构造javascript。 这将允许您加载可执行内容而不是静态内容。为此,首先你需要一个javascript函数将php加载到脚本元素中。像这样的东西:-
function loadscript(src){
var myscript = document.createElement('script');
myscript.src = src;
document.getElementByTagName('head')[0].appendChild(src);
}
然后,您可以将PHP变量写入构造的JS代码,然后通过在浏览器中调用函数来加载PHP。PHP将是这样的。
在服务器 myphpcode 上.php
<?php
$sessionid = $_SESSION['user_id'];
?>
mydiv.innerHTML = 'User ID ' + <?php echo $sessionid; ?>;
在 HTML 页面中调用 js
loadscript('myphpcode.php');
使用相同的方法通过 PHP 将数据发送回服务器,方法是在 JavaScript 中构造一个有效的查询字符串以附加到 loadscript 调用。
var a = 'some data';
var b = 'some more data';
var urlstring = 'myphpcode.php?a=' + a + '&b=' + b;
loadscript(urlstring);
然后,您可以将JavaScript变量存储在数据库中,例如通过在myphpcode.php中编写函数。
<?php
include mydbconnection.php // some database connection code
if ((isset $_GET["a"]) && (isset $_GET["b"])) { //check the url query string has data
$a = $_GET["a"];
$b = $_GET["b"];
$query = "INSERT into mydatabase.mytable (columnA, columnB)
VALUES ('" . $a . "','" . $b . "');";
if ($mysqli->prepare($query)){
$mysqli->execute();
}
}
?>
相关文章:
- 避免在来自HTML的Scala.js调用中重复包名称
- 如何从角度 js 调用 javascript 方法
- Odoo销售点如何访问模型并使用JS调用方法
- 存储在 2D 数组中的 js 调用函数
- 使用 Vue.js 调用 Node.js 服务器
- 有没有一种方法可以在windows上使用Grunt.js调用gitshell中的命令
- 使用助手METEOR-JS调用Facebook照片
- 当 Node.js 调用 HTML 时,外部 Javascript 和 CSS 不会对 HTML 产生影响
- 使用node.js调用webservice时需要一些帮助
- 如何调试JS调用
- 当控制台不在't在chrome中打开,有些项目不再可点击(有些js调用停止工作)
- 如何使用monk/node.js调用mongodb函数
- Marketo monchkin.js调用间歇性无响应.(CORS)
- 如何在AngularJS ngview中加载图像后执行foundation js调用
- file_get_contents在动态 js 调用中不起作用
- 从 JS 调用 IE Js 调试器
- 在 selectedOptions 属性中挖空 JS 调用函数
- JS调用方法,为什么不直接使用括号
- Angular JS调用Sinatra不返回数据
- 如何从 HTML 文档中的外部 JS 调用/启动此函数