我想更改我的订阅div的内容而不刷新

时间:2018-06-07 07:57:37

标签: javascript php jquery html ajax

我想更改订阅div的内容,例如当用户已订阅时我想将div颜色更改为红色并告诉您已经订阅的消息'。我知道它可以用ajax完成,但我对Ajax一无所知。

这是PHP插入的div

<?php
echo ';
<div id="sub">
<form method="post" action="subscription.inc.php">
    <input type="text" name="email" placeholder="Enter your Email">
    <button type="submit" name="submit" value="submit" `enter code here`onclick="myAjax()">Subscirbe</button>
</form>
</div>
';
?> 

这是应该在点击

时运行的PHP代码
<?php 
include 'conn.php';
include 'sub.php';
  if (isset($_POST['submit'])) {
    $email=mysqli_real_escape_string($conn,$_POST['email']);
      $sql="INSERT INTO `subscribe` (`id`, `email`) VALUES (NULL, '$email');";

      $emailcheck="SELECT * FROM `subscribe` WHERE email='ayush.antino@gmail.com'";
      $doubleemail=mysqli_query($conn,$emailcheck);
      $num_rows=mysqli_num_rows($doubleemail);
      if ($num_rows>0) {
        header("Location:sub.php?subscribe=alreadyexist");
        exit();
      }elseif ($num_rows==0) {
        if (!filter_var($email,FILTER_VALIDATE_EMAIL)) {
         echo "please enter valid email";
      } else {
         mysqli_query($conn,$sql);
         header("Location:sub.php?subscribe=success");
         exit();
      }

  }
}
?>

我应该如何更新消息&#39;您已经订阅了&#39;没有刷新页面

1 个答案:

答案 0 :(得分:0)

尝试这样..

 <div id="sub">
    <form method="post" action="subscription.inc.php">
        <input type="text" name="email" placeholder="Enter your Email">
        <button type="submit" name="submit" value="submit" `enter code here`onclick="myAjax()">Subscirbe</button>
    </form>
    </div>
    <script>
checkSubscribe();
    function checkSubscribe() {

            var xmlhttp = new XMLHttpRequest();
            xmlhttp.onreadystatechange = function() {
                if (this.readyState == 4 && this.status == 200) {
            $('#sub').css('background-color:red;')
                }
            };
            xmlhttp.open("GET", "checkuser.php", true);
            xmlhttp.send();

    }
    </script>