Srliy 2021-12-09 00:20 采纳率: 25%
浏览 58
已结题

html提交信息到数据库,点击链接的php文件,怎么不跳转到PHP文件 而是直接在提交页面显示

问题

点击提交,直接跳转到 write.php 页面去执行了,要怎么才可以就在提交页面不跳转到write.php,执行PHP

提交页面
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link href="/css/style.css" rel="stylesheet">

    <script src="/jQuey/jquery-3.6.0.min.js"></script>
</head>
<body>
<!-- ======= 联系 开始 ======= -->
<section id="contact" class="contact">
        <div class="col-lg-7 mt-5 mt-lg-0 d-flex align-items-stretch">
            <form action="write.php" method="post" role="form">
            <div class="row">
              <div class="form-group col-md-6">
                <label for="name">您的姓名</label>
                <input type="text" name="name" class="form-control" id="name" required>
              </div>
              <div class="form-group col-md-6">
                <label for="name">您的邮箱</label>
                <input type="email" class="form-control" name="email" id="email" required>
              </div>
            </div>
            <div class="form-group">
              <label for="name">您的主题</label>
              <input type="text" class="form-control" name="subject" id="subject" required>
            </div>
            <div class="form-group">
              <label for="name">您的内容</label>
              <textarea class="form-control" name="message" id="message" rows="10" required></textarea>
            </div>
              <div id="img1"><div class="sent-message" >您的信息已提交,非常感谢。</div></div>
              <div id="img2"><div class="error-message" >您的信息未填写,重新填写。</div></div>
              <div class="text-center"><button type="submit"  id="btn1">提交信息</button></div>
              <script>
                $(document).ready(function () {
                    $("#img1").hide();
                    $("#img2").hide();
                    $("#btn1").click(function () {
                        if ($("#name").val() == ""){
                             $("#img2").show();
                             $("#img1").hide();
                        }else{
                        if ($("#email").val() == ""){
                             $("#img2").show();
                             $("#img1").hide();
                        }else{
                        if ($("#subject").val() == ""){
                             $("#img2").show();
                        }else{
                        if ($("#message").val() == ""){
                             $("#img2").show();
                             $("#img1").hide();
                        }else{
                            $("#img1").show();
                            $("#img2").hide();
                        }
                        }
                        }
                        }
                    });
                });
            </script>
          </form>
        </div>

      </div>

    </div>
  </section>
  <script src="assets/js/main.js"></script>
</body>
</html>

write.php
<?php
$ne=$_POST['name'];//姓名
$em=$_POST['email'];//邮箱
$sje=$_POST['subject'];//主题
$me=$_POST['message'];//信息

$link = mysqli_connect(   
 'localhost',    /* The host to connect to 连接MySQL地址 */ 
 'user',         /* The user to connect as 连接MySQL用户名 */ 
 'admin123',       /* The password to use 连接MySQL密码 */  
 'user');    /* The default database to query 连接数据库名称*/
if (!$link)  {
     printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error()); 
     exit; 
} else  {
     echo ('数据库已连接!')."<br/>";   /* Close the connection 关闭连接*/
}
$sql="INSERT INTO person (name,email,subject,message) VALUES ('$ne','$em','$sje','$me')";
if($result = $link->query($sql)){
    echo "提交成功";
}else{
    echo "提交失败";}
mysqli_query($link,'set names utf8');    //解决中文乱码的问题
/* Close the connection 关闭连接*/ 
mysqli_close($link);
?>

我想要达到的结果

在提交页面不跳转到write.php 执行PHP。

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2021-12-09 09:09
    关注

    最简单的,提交到隐藏的iframe中

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <link href="/css/style.css" rel="stylesheet">
        <script src="/jQuey/jquery-3.6.0.min.js"></script>
    </head>
    <body>
        <!-- ======= 联系 开始 ======= -->
        <section id="contact" class="contact">
            <div class="col-lg-7 mt-5 mt-lg-0 d-flex align-items-stretch">
                <iframe name="ajaxifr" style="display:none"></iframe>
                <form action="write.php" method="post" role="form" target="ajaxifr">
                    <div class="row">
                        <div class="form-group col-md-6">
                            <label for="name">您的姓名</label>
                            <input type="text" name="name" class="form-control" id="name" required>
                        </div>
                        <div class="form-group col-md-6">
                            <label for="name">您的邮箱</label>
                            <input type="email" class="form-control" name="email" id="email" required>
                        </div>
                    </div>
                    <div class="form-group">
                        <label for="name">您的主题</label>
                        <input type="text" class="form-control" name="subject" id="subject" required>
                    </div>
                    <div class="form-group">
                        <label for="name">您的内容</label>
                        <textarea class="form-control" name="message" id="message" rows="10" required></textarea>
                    </div>
                    <div id="img1"><div class="sent-message">您的信息已提交,非常感谢。</div></div>
                    <div id="img2"><div class="error-message">您的信息未填写,重新填写。</div></div>
                    <div class="text-center"><button type="submit" id="btn1">提交信息</button></div>
                    <script>
                        $(document).ready(function () {
                            $("#img1").hide();
                            $("#img2").hide();
                            $("#btn1").click(function () {
                                if ($("#name").val() == "") {
                                    $("#img2").show();
                                    $("#img1").hide();
                                } else {
                                    if ($("#email").val() == "") {
                                        $("#img2").show();
                                        $("#img1").hide();
                                    } else {
                                        if ($("#subject").val() == "") {
                                            $("#img2").show();
                                        } else {
                                            if ($("#message").val() == "") {
                                                $("#img2").show();
                                                $("#img1").hide();
                                            } else {
                                                $("#img1").show();
                                                $("#img2").hide();
                                                return true;//提交表单
                                            }
                                        }
                                    }
                                }
                                return false;
                            });
                        });
                    </script>
                </form>
            </div>
            </div>
            </div>
        </section>
        <script src="assets/js/main.js"></script>
    </body>
    </html>
    
    
    

    有帮助麻烦点下【采纳该答案】,谢谢~~有其他问题可以继续交流~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月17日
  • 已采纳回答 12月9日
  • 修改了问题 12月9日
  • 创建了问题 12月9日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来