Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在mysql中成功插入数据后,如何显示警报框?_Javascript_Php_Mysql - Fatal编程技术网

Javascript 在mysql中成功插入数据后,如何显示警报框?

Javascript 在mysql中成功插入数据后,如何显示警报框?,javascript,php,mysql,Javascript,Php,Mysql,我想在MySQL中成功插入数据后显示JavaScript警报。如何做到这一点?我已经编写了这段代码,但每次打开此页面时,它都会显示JavaScript警报,当我单击JavaScript警报的OK时,它会将我重定向到finalem.php,而不会从用户处获取值 $sql="INSERT INTO members VALUES ('$name', '$email', '$ybr', '$ach')"; if(!mysqli_query($con,$sql)) { die('Error:

我想在MySQL中成功插入数据后显示JavaScript警报。如何做到这一点?我已经编写了这段代码,但每次打开此页面时,它都会显示JavaScript警报,当我单击JavaScript警报的OK时,它会将我重定向到finalem.php,而不会从用户处获取值

$sql="INSERT INTO members VALUES ('$name', '$email', '$ybr', '$ach')";

if(!mysqli_query($con,$sql)) 
{
    die('Error: ' . mysqli_error($con));
}

else
{

    echo '<script language="javascript">';
    echo 'alert("Successfully Registered"); location.href="finalmem.php"';
    echo '</script>';
}       
$sql=“插入成员值('$name'、'$email'、'$ybr'、'$ach')”;
如果(!mysqli_query($con,$sql))
{
die('Error:'.mysqli_Error($con));
}
其他的
{
回声';
echo“警报(“成功注册”);location.href=“finalem.php”;
回声';
}       

提前感谢。

您需要知道两件事,其中之一是确认您的数据是否成功保存

为了这个你可以玩

mysql_affected_rows() 
此函数将返回受查询影响的行数。如果为零,则未插入。如果>=1,则为

因此:

如果对行ID使用自动递增列,还可以使用mysql\u insert\u ID()

然后可以使用jQuery UI显示如下对话框:

[https://jqueryui.com/dialog/][1]
您需要加载.css和.js文件来运行jQuery,并在代码中放入以下内容:

  <script>
  $(function() {
    $( "#dialog" ).dialog();
  });
  </script>

$(函数(){
$(“#dialog”).dialog();
});
在你看来:

<div id="dialog" title="Basic dialog">
  <p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>

这是用于显示信息的默认对话框。可以使用“x”图标移动、调整和关闭对话框窗口

通常情况下,这对我来说是非常难看的,因为最好的方法是通过AJAX来实现。

使用设置
isset($\u POST['submit'])
来检查用户是否提交表单

    <?php

    include 'SQLIDB.php';   

    if(isset($_POST['submit'])){

        $name=$_POST['name'];
        $email=$_POST['email'];
        $ybr=$_POST['ybr'];
        $ach=$_POST['ach'];

    $sql="INSERT INTO members VALUES ('$name', '$email', '$ybr', '$ach')";

    if(!mysqli_query($con,$sql)) 
    {
        die('Error: ' . mysqli_error($con));
    }

    else
    {

        echo '<script language="javascript">';
        echo 'alert("Successfully Registered"); location.href="finalmem.php"';
        echo '</script>';
    }  

    }

?>

    <form action="" method="post">

        <input type="text" name="name">
        <input type="text" name="email">
        <input type="text" name="ybr">
        <input type="text" name="ach">

        <input type="submit" name="submit" value="Submit">

    </form>
您可以这样尝试

<?php session_start();
//Include database detail here
if(isset($_POST['name'])){
    $name = mysqli_real_escape_string($_POST["name"]);
    $ybr = mysqli_real_escape_string($_POST["ybr"]);
    email = mysqli_real_escape_string($_POST["email"]);
    $ach = mysqli_real_escape_string($_POST["ach"]);

    //Do your data validation here

    $_SESSION['sname'] = $name;
    $_SESSION['sybr'] = $ybr;
    $_SESSION['semail'] = email;
    $_SESSION['sach']= $ach;

    $sql="INSERT INTO members VALUES ('$name', '$email', '$ybr', '$ach')";
    if(!mysqli_query($con,$sql)) {
        die('Error: ' . mysqli_error($con));
    } else {
        echo '<script language="javascript">';
        echo 'alert("Successfully Registered"); location.href="finalmem.php"';
        echo '</script>';
    }
}
?>

试试为什么不使用PDO-这里有一个很好的简单教程:你必须把上面的代码放在if语句中,例如如果你从表单so发布
if(isset($_POST['submit']){把上面的代码放在这里}
现在,你的代码就像一扇没有锁的门,任何人都可以通过。不清楚你上面的代码是如何工作的。你是否有任何地方试图提交此代码?@Shehary我也在使用会话…因为我在提交表单之前验证数据。这部分开始时,然后在中间进行数据验证,如果所有都没有输入是正确的,然后我提交数据。在上面的$sql查询之前,我已经写了$name=$\u SESSION['sname'];$ybr=$\u SESSION['sybr'];$email=$\u SESSION['semail'];$ach=$\u SESSION['sach'];感谢您的回复,但我也在使用会话,因为我也在验证用户输入……我尝试过:$sql=“插入成员值('$name'、'$email'、'$ybr'、'$ach')”;if(!mysqli_query($con,$sql)){die('Error:'.mysqli_Error($con))}如果(mysql_impacted_rows()>=1){echo';echo'警报(“成功注册”);location.href=“finalem.php”';echo'}嗯,用户已经在使用mysqli(一件好事)请不要建议他们使用不推荐的code@nomistic哎呀,我没看到这个=)尝试相同的方法,但我在MySQLi@MetElIdrissi Sir中使用了“if”(MySQLi\u受影响的行($con)>=1)的函数“它也可以工作,但每当我刷新页面时,警报就会弹出,只要我单击“确定”,我就会被重定向到另一个页面,页面不会等待字段中的输入……先生,这是我第一次使用stackoverflow,代码很长,你能给我你的邮件Id吗……请粘贴。我的用户名是sankalpnigam。先生,是的,但什么时候您放入$flag=“”,表单接受输入并验证数据,但..警报根本不显示。。。
    <?php

    include 'SQLIDB.php';   

    if(isset($_POST['submit'])){

        $name=$_POST['name'];
        $email=$_POST['email'];
        $ybr=$_POST['ybr'];
        $ach=$_POST['ach'];

    $sql="INSERT INTO members VALUES ('$name', '$email', '$ybr', '$ach')";

    if(!mysqli_query($con,$sql)) 
    {
        die('Error: ' . mysqli_error($con));
    }

    else
    {

        echo '<script language="javascript">';
        echo 'alert("Successfully Registered"); location.href="finalmem.php"';
        echo '</script>';
    }  

    }

?>

    <form action="" method="post">

        <input type="text" name="name">
        <input type="text" name="email">
        <input type="text" name="ybr">
        <input type="text" name="ach">

        <input type="submit" name="submit" value="Submit">

    </form>
<?php session_start();
//Include database detail here
if(isset($_POST['name'])){
    $name = mysqli_real_escape_string($_POST["name"]);
    $ybr = mysqli_real_escape_string($_POST["ybr"]);
    email = mysqli_real_escape_string($_POST["email"]);
    $ach = mysqli_real_escape_string($_POST["ach"]);

    //Do your data validation here

    $_SESSION['sname'] = $name;
    $_SESSION['sybr'] = $ybr;
    $_SESSION['semail'] = email;
    $_SESSION['sach']= $ach;

    $sql="INSERT INTO members VALUES ('$name', '$email', '$ybr', '$ach')";
    if(!mysqli_query($con,$sql)) {
        die('Error: ' . mysqli_error($con));
    } else {
        echo '<script language="javascript">';
        echo 'alert("Successfully Registered"); location.href="finalmem.php"';
        echo '</script>';
    }
}
?>