PHP文档中的Javascript Popup Yes和No Dialog窗口

时间:2016-08-27 00:07:42

标签: javascript php

我目前有一个 index.php 文档,用于发送 login.php

的数据

带有值的文档:

  1. studentid
  2. 姓名
  3. 姓氏。

    我想要做的是在将数据提交到我的数据库之前创建一个是/否对话框。这是我写的代码:

    它们不在数据库中,因此存储

      $readStr1 = 'Are you sure you want to create a user account under this email address?';
      echo '
      <script>
        var r = window.confirm("'.$readStr1.'");
        if (r==true)
          'mysql_query("INSERT INTO `persons` (studentid,firstname,lastname,paid) VALUES ('".$studentid."','".$firstname."','".$lastname."','0')") or die(mysql_error());';
      } else {
        history.back();
      }
      </script>
      ';
    
  4. 我已经知道变量并且一切正常,因为我可以在没有echo代码的情况下将数据提交到 sql数据库

    但是,一旦我添加了该页面,整个页面都是空白的,没有任何控制台输出,也没有出现 javascript 弹出窗口。

    感谢您的帮助,希望我提供了足够的信息:)

1 个答案:

答案 0 :(得分:1)

为什么空白

你的php有语法错误。不要忘记字符串连接运算符:

$a=world;
echo 'hello,'.$a.'!';

重要

你应该知道php的工作原理!  1.当您访问.php页面时,服务器将解释php以呈现html文档  2.渲染完成后,服务器将html文档发送到浏览器  3.当浏览器收到完成后,浏览器开始解释文档。并且javascript程序开始运行。

Php是服务器端语言,js是客户端,它们在不同的时间运行.PHP首先生成js代码(在服务器上),js运行第二个(在浏览器上)。

所以,你可以试试ajax。将确认条件发送到另一个php文件,让该文件运行查询语句:

echo '
<script>
var r = window.confirm("'.$readStr1.'");
if (r==true)
      insert();
} else {
    history.back();
}
function insert(){
    // write some ajax code
}
</script>
';