如何从JavaScript函数调用php函数?

时间:2013-11-09 10:37:51

标签: javascript php jquery html

在我的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}
}

5 个答案:

答案 0 :(得分:3)

尝试

var result = <?php echo InsertTheRecord(myParameter); ?>

<小时/> 在OP的评论

之后更新

$.ajax

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)});

http://www.w3schools.com/jquery/jquery_ajax_intro.asp

http://www.tutorialspoint.com/ajax/

答案 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}
}