在某人对我说话或将其标记下来之前,我已经在互联网上查找了如何执行此操作(包括stackoverflow上的相同问题)。我是新人,我发现学习新概念非常困难,所以请对我很轻松。
我想要做的是点击按钮调用php脚本/函数。如果有帮助,我在WAMP中运行它。这是我的代码:
<?php include 'the_script.php'; ?>
<button type="button" onclick="the_function()">Click Me</button>
the_script.php中有这个:
the_function() {
echo "You win";
}
为什么这不起作用?我听说过按钮是客户端等,而PHP是服务器端,这意味着你无法将两者连接在一起。我知道你必须使用AJAX来完成这项工作,但我合法地完全不知道如何做到这一点。我试过谷歌搜索等,但我无法找到任何东西。我知道如何使用AJAX并使用它调用事件,但是我仍然不知道如何调用它来调用PHP脚本。
你能否尽可能简单明了地回答你的问题,我是
的新手感谢您的帮助:)
编辑***
出于某种原因,无论我走到哪里,每个人的代码都不同。我学习AJAX的方式看起来完全不同。你能用这种方式写出来让我明白吗?谢谢,这是一个例子:
var request;
if (window.XMLHttpRequest) {
request = new XMLHttpRequest();
} else {
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.open('GET', 'file.php', true);
request.onreadystatechange = function() {
if (request.readyState===4 && request.status===200) {
do stuff
}
}
request.send();
答案 0 :(得分:31)
试试这个:
<button type="button">Click Me</button>
<p></p>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$.ajax({
type: 'POST',
url: 'script.php',
success: function(data) {
alert(data);
$("p").text(data);
}
});
});
});
</script>
在script.php中
<?php
echo "You win";
?>
答案 1 :(得分:12)
当然,AJAX就是解决方案,
执行AJAX请求(为了方便起见,我们可以使用jQuery库)。
<强>步骤1。强>
在您的网页中包含jQuery库
一个。你可以从jquery.com下载jQuery库并保存在本地。
湾或者只是粘贴以下代码,
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
第2步。
点击按钮
调用javascript函数<button type="button" onclick="foo()">Click Me</button>
第3步。
最后是函数
function foo () {
$.ajax({
url:"test.php", //the page containing php script
type: "POST", //request type
success:function(result){
alert(result);
}
});
}
当你点击按钮并提醒响应时,它会向test.php发出一个AJAX请求。
例如,test.php中的代码是,
<?php echo 'hello'; ?>
然后它会警告&#34;你好&#34;什么时候点击按钮。
答案 2 :(得分:5)
您也可以使用
<script type="text/ng-template" id="todo.html">
<div>
<div>{{ todo.text }}</div>
<ul>
<li ng-repeat="todo in todo.children" ng-include="'todo.html'"></li>
</ul>
</div>
</script>
<div ng-controller="MyController">
<ul>
<li ng-repeat="todo in todos" ng-include="'todo.html'"></li>
</ul>
</div>
希望它有助于某人
答案 3 :(得分:2)
使用jQuery
。在HTML页面 -
<button type="button">Click Me</button>
<script>
$(document).ready(function() {
$("button").click(function(){
$.ajax({
url:"php_page.php", //the page containing php script
type: "POST", //request type
success:function(result){
alert(result);
}
});
});
})
</script>
Php页面 -
echo "Hello";
答案 4 :(得分:0)
the_function() {
$.ajax({url:"demo_test.php",success:function(result){
alert(result); // will alert 1
}});
}
// demo_test.php
<?php echo 1; ?>
备注强>
答案 5 :(得分:0)
像这样修改 the_script.php 。
<script>
the_function() {
alert("You win");
}
</script>
答案 6 :(得分:0)
First understand that you have three languages working together.
PHP:仅由服务器运行并响应点击链接(GET)或提交表单(POST)等请求。 HTML&amp; Javascript:仅在某人的浏览器中运行(不包括NodeJS) 我假设你的文件看起来像:
<?php
function the_function() {
echo 'I just ran a php function';
}
if (isset($_GET['hello'])) {
the_function();
}
?>
<html>
<a href='the_script.php?hello=true'>Run PHP Function</a>
</html>
因为PHP只响应请求(GET,POST,PUT,PATCH和DELETE通过$ _REQUEST),所以你必须运行php函数,即使它们在同一个文件中。这为您提供了一定程度的安全性,“我是否应该为此用户运行此脚本?”。
如果您不想刷新页面,可以向PHP发出请求,而无需通过名为Asynchronous Javascript and XML(AJAX)的方法进行刷新。