如何通过超文本链接调用php函数
我想调用一个PHP函数,在同一页面上点击超链接(带有<a>
标签的文本)时传递参数,即href='#' onclick='loadpic($id)
。如何通过超文本链接调用php函数
其中$id
是要传递给PHP函数的变量。
你可以很容易地通过ajax来做到这一点。在JavaScript中创建一个loadpic函数,然后通过ajax将$ id传递给php文件,并在获得结果时执行某些操作。
你的JavaScript文件应该看起来像这 -
(请确保您插入您的索引文件的链接的jQuery)
function loadpic(id_param){
$.post("filename.php",
{
id: id_param
},
function(data){
alert("Data received:" + data);
});
};
的功能(数据)的数据参数将是值你已经在php文件中回应。
注意,'jquery'标签不会出现在问题中。 – guest271314
在jQuery中实现一些东西肯定比js容易。 user2599097不知道答案,并期望它在js中,这就是为什么没有这样的标签(我猜) –
_“在jQuery中实现某些东西肯定比js更容易。”_?这是如何确定的? – guest271314
您仍然必须让javascript处理异常,因为php没有onclick。
onClick=\"loadpic("'.$id.'");"\
//this will only send a php variable javascript will still have to loadpic();
如果你想使用onclick()
方法在你的HTML元素,那么你必须写你的方法是JavaScript使一个AJAX调用PHP。这是一个简单的方法来做到这一点使用PHP和JavaScript。为此,请参阅javascript和ajax与PHP。
但是,如果你不想使用JavaScript,那么这里是一个简单的方法和非常简单的代码。
<?php
if(isset($_GET['myMethod'])){
myMethod($_GET['id']);
}
function myMethod($id){
echo $id."<br>";
}
?>
<?php
$myId = 4;
?>
<a href="index.php?id=<?php echo $myId ?>&myMethod" >MyLink</a>
注:将此代码复制并粘贴到一个名为index.php
因为通知的超链接标签及其属性href="index.php"
。
另外请注意,您不能从HTML标记中使用js如onclick()
直接调用php方法。你应该使用AJAX或其他东西。但使用上述演示代码,您可以轻松地使用超链接标记调用myMethod()
这是一种PHP方法。
你的情况:
<?php
if(isset($_GET['call_loadpic'])){
loadpic($_GET['id']);
}
function loadpic($id){
echo "My loadpic method has been called! and the id is".$id."<br />";
}
?>
<!-- your other codes -->
<?php
$id = 4;
?>
<a href="this-same-file-name.php?id=<?php echo $id ?>&call_loadpic" >MyLink</a>
这是因为你的PHP函数是在同一个页面,你要调用使用相同的文件和超链接在同一个文件的功能。 (根据您的问题)
远程过程调用(RPC)? https://en.wikipedia.org/wiki/Remote_procedure_call – xFighter