我可以在 JavaScript 点击处理程序中调用 PHP 函数吗?
Posted
技术标签:
【中文标题】我可以在 JavaScript 点击处理程序中调用 PHP 函数吗?【英文标题】:Can I call a PHP function in a JavaScript click handler? 【发布时间】:2015-03-17 23:17:38 【问题描述】:我有一个登录系统,我想介绍一个用户可以更改他的电子邮件的功能......
但是,如果我点击更改,网站会重新加载,但什么也没有发生。
这是函数中的脚本:
function changeemail($newemail, $mysqli)
$sql="UPDATE members SET email = '$newemail' WHERE userid='$_SESSION[user_id]";
$stmt = $mysqli->prepare($sql);
$stmt->bind_param();
$stmt->execute();
$stmt->close();
这里是 html 部分:
<form method="post" action="<?php echo esc_url($_SERVER['PHP_SELF']);?>">
<input type="text" id="newemail"><br>
<input type="submit" value="Ändern!" onclick="return changeemail(this.form,
this.form.newemail);"/>
</form><br>
提前致谢!
【问题讨论】:
不能通过 js onclick 调用 php 函数 正如@Dagon 所说,PHP 我们是一种服务器端语言; javascript 是客户端(浏览器)端。你在混合油和水。 @LynnCrumbling 哦,我明白了......但我必须以某种方式调用这个函数...... @LynnCrumbling *Javascript 是客户端(你错了 php) @RyanJ 谢谢 - 已修复 :) 【参考方案1】:由于 php 是服务器端,你不能这样做。但是你可以做的是使用 Javascript/jquery 加载页面 onclick 然后更新电子邮件
然后使用Javascript上传页面
$( "#result" ).load("yourpage.php");
【讨论】:
【参考方案2】:无法从 javascript onclick 调用 php 函数,因为 php 是服务器端语言,而 javascript 是客户端。
我根本不需要函数,因为我可以通过 POST 获取在表单中输入的值。
【讨论】:
以上是关于我可以在 JavaScript 点击处理程序中调用 PHP 函数吗?的主要内容,如果未能解决你的问题,请参考以下文章