Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.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_Html_Ajax - Fatal编程技术网

Javascript 尝试将数据插入mySql数据库时出错

Javascript 尝试将数据插入mySql数据库时出错,javascript,html,ajax,Javascript,Html,Ajax,在这些日子里,我试图用php和mySql编写一种注册登录系统,但不知怎的,我成功地做到了;现在我想把所有的东西放在一个新的带有弹出窗口的页面上:你按下“注册”或“登录”按钮,屏幕上出现一个包含所有东西的窗口,这就是我所做的: <!DOCTYPE html> <html> <head> <title>FindMyChamp</title> </head> <body> <style type="text/cs

在这些日子里,我试图用php和mySql编写一种注册登录系统,但不知怎的,我成功地做到了;现在我想把所有的东西放在一个新的带有弹出窗口的页面上:你按下“注册”或“登录”按钮,屏幕上出现一个包含所有东西的窗口,这就是我所做的:

<!DOCTYPE html>
<html>
<head>
<title>FindMyChamp</title>
</head>
<body>
<style type="text/css">
    .popUpBox{
        display: none;
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,0.4);
    }
    .popUpBoxBody{
        margin: 15% auto;
        padding: 15px;
        background-color: #fefefe;
        width: 30%;
    }
    .closeBtn{
        float: right;
        font-size: 28px;
    }
    .container{
        width: 300px;
        clear: both;
        display: block;
      margin-left: auto;
      margin-right: auto;
      text-align: center;
    }
    .container input{
        width: 100%;
        clear: both;
    }
    #send{
        width: 50%;
    }
</style>

<h1>Test</h1>
<p id="popUpTrigger">Register</p> 
<p>Login</p>
<div id="divPopUp" class="popUpBox">
    <div class="popUpBoxBody">
        <span id="popUpCloser" class="closeBtn">&times;</span>
        <div class="container">
            <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
                Username: <input type="text" name="username">
                Password: <input type="password" name="password">
                Repeat Password: <input type="password" name="passwordCheck"><br><br>           
                <input value="Send" id="send" type="submit" name="sub">
            </form>     
            <?php include('registration.php') ?>
        </div>
    </div>
</div>
<script type="text/javascript">
    var btnOpen = document.getElementById("popUpTrigger");
    var popUp = document.getElementById("divPopUp");
    var btnClose = document.getElementById("popUpCloser")
    btnOpen.onclick = function(){
        popUp.style.display = "block";
    }
    btnClose.onclick = function(){
        popUp.style.display ="none";
    }
</script>

FindMyChamp
Popupox先生{
显示:无;
位置:固定;
宽度:100%;
身高:100%;
排名:0;
左:0;
背景色:rgba(0,0,0,0.4);
}
.PopuboxBody{
利润率:15%;
填充:15px;
背景色:#fefe;
宽度:30%;
}
.关闭{
浮动:对;
字号:28px;
}
.集装箱{
宽度:300px;
明确:两者皆有;
显示:块;
左边距:自动;
右边距:自动;
文本对齐:居中;
}
.容器输入{
宽度:100%;
明确:两者皆有;
}
#发送{
宽度:50%;
}
试验

寄存器 登录

&时代;
使用ajax,您可以在register.php中执行代码,而无需刷新页面

您必须删除退出();这个问题与php或mysql无关,这是纯前端相关的。Usr ajax在后台将faya发送到服务器。
<?php
function test_input($data){
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
if(isset($_POST["sub"])){
    $username = $password = $passwordCheck = "";
    $flag = true;
    $con = mysql_connect('localhost','root','Testpass');
    if($_SERVER["REQUEST_METHOD"] == "POST"){
        //Controllo se i campi sono vuoti
        if(empty($_POST["username"])){
            echo "The field 'Username' is required<br>";
        } else{
            $username = test_input($_POST["username"]);             
        }
        if(empty($_POST["password"])){
            echo "The field 'Password' is required<br>";
            $flag = false;
        } else{
            $password = test_input($_POST["password"]);             
        }
        if(empty($_POST["passwordCheck"])){
            echo "The field 'Repeat Password' is required<br>";
            $flag = false;
        } else{
            $passwordCheck = test_input($_POST["passwordCheck"]);               
        }   
    }
    if($password == $passwordCheck && $password != ""){
        mysql_select_db('tutorials');
        $checkUsernameDuplicate = mysql_query("SELECT * FROM registration WHERE username = '$username'");
        if(mysql_num_rows($checkUsernameDuplicate) <= 0){
            $cost = 10;             
            $salt = strtr(base64_encode(mcrypt_create_iv(16,MCRYPT_DEV_URANDOM)), '+', '.');
            $salt = sprintf("$2a$%02d$", $cost). $salt;
            $hash = crypt($password, $salt);
            $sql = "INSERT INTO registration(username,password) VALUES('$username','$hash')";
            $retvalue = mysql_query($sql,$con);
            if(!$retvalue){
                echo "Something went wrong";
            } else{
                echo "Dati inseriti";
                //header("Location: http://localhost/database/login.php");              
                exit();     
            }

        } else{
                echo "Username aldready taken";
        }
        mysql_close($con);      
    } 
    elseif($flag){
        echo "<p style='color: red;'>The two password must match</p>";
    }
}
?>