在我的index.ph
p文件中,我有一个php函数"InsertTheRecord"
,它获取一个参数并将其插入数据库。如果成功插入该参数,则返回1,否则返回0。
我在同一个index.php中有以下JavaScript函数"InsertRecord"
,我想调用php InsertTheRecord函数。如何从JavaScript函数调用php函数?
我的JavaScript功能:
function InsertRecord() {
var myParameter = 40;
var result = ////call InsertTheRecord(myParameter) //I don't know how to do this?
if result == 1 { //do something}
else { //show error message}
}
答案 0 :(得分:3)
尝试
var result = <?php echo InsertTheRecord(myParameter); ?>
<小时/> 在OP的评论
之后更新
function InsertRecord() {
$.ajax({
type: "POST",
url: "your_php_page.php",
data: "arg1=id&arg2=name",
success: function (data) {
var myParameter = 40;
var result = data;
if result == 1 {} else {}
}
});
}
答案 1 :(得分:3)
php服务器端脚本语言和javascript是客户端脚本语言 你可以通过ajax call(Jquery)来做到这一点
<div id="yourdiv"></div>
var data ="hello world";
var data2="hello all";
function run(){
$.ajax({ url: 'myscript.php',
data: {'q': data,'z':data2},
type: 'post',
success: function(output) {
alert(output);
document.getElementById("yourdiv").innerHTML += output; //add output to div
}
});
}
myscript.php
<?php
myfun();
function myfun(){
$myvar2 = $_POST['z'];
$myvar = $_POST['q']."how are you?";
echo $myvar."\n";
echo $myvar2;
}
?>
这个警告“你好世界你好吗?”
答案 2 :(得分:2)
PHP是服务器端, JS是客户端, 所以PHP首先工作,然后JS在浏览器中动态工作。
您无法在运行时调用PHP函数。但你可以使用AJAX来做到这一点。看看这个:http://www.w3schools.com/ajax/ajax_aspphp.asp
答案 3 :(得分:0)
不可能
Javascript是客户端脚本语言,其中PHP是服务器端脚本语言 但是,您可以尝试使用AJAX方法获得类似的结果,您可以传递与函数
相同的变量为function myfunction(var1, var2 ,....){return var1*var2}
使用ajax,您可以在按钮单击时从外部运行php脚本
$.ajax({key:var},function(result){alert(result)});
答案 4 :(得分:0)
如果你将myParameter写入隐藏的输入字段,然后使用javascript抓取它,该怎么办?
HTML / PHP文件:
<input type="hidden" id="myParameter" value="<?php echo InsertTheRecord(myParameter); ?>"/>
在Javascript中:
function InsertRecord() {
var myParameter = 40;
var result = document.getElementById("myParameter").value();
if result == 1 { //do something}
else { //show error message}
}