【问题标题】:Can I call a PHP function in a JavaScript click handler?我可以在 JavaScript 点击处理程序中调用 PHP 函数吗?
【发布时间】: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 谢谢 - 已修复 :)

标签: php mysql


【解决方案1】:

由于 php 是服务器端,你不能这样做。但是你可以做的是使用 Javascript/jquery 加载页面 onclick 然后更新电子邮件

然后使用Javascript上传页面

 $( "#result" ).load("yourpage.php");  

【讨论】:

    【解决方案2】:

    无法从 javascript onclick 调用 php 函数,因为 php 是服务器端语言,而 javascript 是客户端。

    我根本不需要函数,因为我可以通过 POST 获取在表单中输入的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多