如何从JavaScript中调用PHP脚本

时间:2014-06-25 18:27:05

标签: javascript php

我需要有关如何从JavaScript中调用外部PHP脚本的帮助。 请参阅下面的示例

的index.php

<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>

<script>
var myName = 'John';
phpResult = /* Need help calling script.php passing is myName and assigning result to phpResult */;

document.getElementById("demo").innerHTML = "The text from the intro paragraph is " + phpResult;
</script>

</body>
</html>

的script.php

<?php
    //script.php
        //Need help adding last name to John (i.e. Smith) and returning John Smith to calling javascript
?>

2 个答案:

答案 0 :(得分:-1)

你可以简单地写

phpResult = '<?php echo $sometext; ?>';

但是,

  • js脚本需要在php文件中。你显然不能在.js文件中使用它。
  • 这不会评估客户端上的任何运行时变量。因为该页面已经包含来自服务器的php脚本呈现的变种。

我一直使用这种方法专门用于将php数组和对象渲染为js对象/数组。

答案 1 :(得分:-1)

首先要做的事情是:你在想什么是不能按照你的想法做的。当请求页面时,服务器运行php文件,然后它将向您发送javascript / html / css页面。所以,当你看到PHP脚本已经完成的页面时。 Javascript正在您的计算机上运行,​​因此您可以使用它来处理用户交互。

但是,如果您向script.php发送帖子请求,发送您想要的信息,那么您将能够与php文件进行交互。要做到这一点,你需要jquery。以下是如何在jquery中执行此操作的脚本:

$.ajax({
  type: "POST",
  url: "yoursite/script.php",
  data: "name="+myName,
  success: function(data){
phpResult = data;
document.getElementById("demo").innerHTML = "The text from the intro paragraph is " + phpResult;

}
});

您可以从此处下载jquery:http://jquery.com/download/

下载后,你必须将它作为普通的javascript文件链接到你的index.php jquery.js文件。

在您的php文件中,您可以使用$_POST["name"]访问该名称,并且您要发送回的信息,您必须实际打印它。 像这样:

if(isset($_POST["name"])){
$result = "";
//Do something with the name, and fill accordingly the $result variable
// Something like:
$result = $_POST["name"]." Smith";
echo $result;
}