注册页面不会将数据存储在数据库中

时间:2017-08-04 13:47:36

标签: php

我在PHP语言中遇到了注册页面的问题。当我单击提交按钮时,表单正在提交,但数据库中没有数据存储。并且无法使用注册用户登录该站点。相同的代码在本地服务器(Wampp服务器)中正常工作,但在网站中不起作用。 这些是代码:

    <?php
require_once("../includes/functions.php");
$sess_start->start_session(false);
if(check_login(1, $sess_start->get_dbhandler()) == true)
{
    header('Location: userportal.php');
}
else
{
    if (!empty($_POST['RegisterFname']) || !empty($_POST['RegisterLname']) || !empty($_POST['RegisterEmail']) || !empty($_POST['RegisterUsername']) || !empty($_POST['RegisterPassword']) || !empty($_POST['RegisterRPassword']) || !empty($_POST['RegisterDob']) || !empty($_POST['RegisterAddress']) || !empty($_POST['RegisterRegion']) || !empty($_POST['RegisterCountry']) || !empty($_POST['RegisterPhone']))
    {
        if (!empty($_POST['RegisterFname']) && !empty($_POST['RegisterLname']) && !empty($_POST['RegisterEmail']) && !empty($_POST['RegisterUsername']) && !empty($_POST['RegisterPassword']) && !empty($_POST['RegisterRPassword']) && !empty($_POST['RegisterDob']) && !empty($_POST['RegisterAddress']) && !empty($_POST['RegisterRegion']) && !empty($_POST['RegisterCountry']) && !empty($_POST['RegisterPhone']))
        {
            if (($_POST['RegisterPassword'] == $_POST['RegisterRPassword']))
            {
                if (strlen($_POST['RegisterRPassword']) >= 8)
                {
                    $registeruser = new user();
                    $registeruser->nickname = clean_string($sess_start->get_dbhandler(), $_POST['RegisterUsername']);
                    $registeruser->sql = mysqli_query($sess_start->get_dbhandler(), "SELECT * FROM `users` WHERE n_name = '$registeruser->nickname'");

                    if (mysqli_num_rows($registeruser->sql) == 0)
                    {   
                        $registeruser->fname = clean_string($sess_start->get_dbhandler(), $_POST['RegisterFname']);
                        $registeruser->lname = clean_string($sess_start->get_dbhandler(), $_POST['RegisterLname']);
                        $registeruser->email = clean_string($sess_start->get_dbhandler(), $_POST['RegisterEmail']);
                        $registeruser->password = $_POST['RegisterRPassword'];
                        $registeruser->password = hash('sha512', $registeruser->password);
                        $registeruser->dob = clean_string($sess_start->get_dbhandler(), $_POST['RegisterDob']);
                        $registeruser->addr = clean_string($sess_start->get_dbhandler(), $_POST['RegisterAddress']);
                        $registeruser->state = clean_string($sess_start->get_dbhandler(), $_POST['RegisterRegion']);
                        $registeruser->country = clean_string($sess_start->get_dbhandler(), $_POST['RegisterCountry']);
                        $registeruser->phone = clean_string($sess_start->get_dbhandler(), $_POST['RegisterPhone']);
                        $registeruser->regtime = time();
                        $registeruser->sql = mysqli_query($sess_start->get_dbhandler(), "INSERT INTO `users` (f_name, l_name, email, n_name, password, age, addr, state, country, phone, l_login, r_time) VALUES ('$registeruser->fname', '$registeruser->lname', '$registeruser->email', '$registeruser->nickname', '$registeruser->password', '$registeruser->dob', '$registeruser->addr', '$registeruser->state', '$registeruser->country', '$registeruser->phone', '0', '$registeruser->regtime')");
                        if (!empty($_GET['RegisterPromo']))
                        {   
                            $registeruser->coupon = clean_string($sess_start->get_dbhandler(), $_POST['RegisterPromo']);
                            $registeruser->sql = mysqli_query($sess_start->get_dbhandler(), "UPDATE `users` SET promo = '$registeruser->coupon' WHERE n_name = '$registeruser->nickname'");
                        }
                        $_SESSION['RegisterUserError'] = 5;
                        header('Location: register.php');
                    }
                    else
                    {
                        $_SESSION['RegisterUserError'] = 4;
                        header('Location: register.php');
                    }                           
                }
                else
                {
                    $_SESSION['RegisterUserError'] = 3;
                    header('Location: register.php');
                }   
            }
            else
            {
                $_SESSION['RegisterUserError'] = 2;
                header('Location: register.php');
            }   
        }
        else
        {
            $_SESSION['RegisterUserError'] = 1;
            header('Location: register.php');
        }       
    }
    else
    {   
        echo '
        meta tages and links for the stylesheets
        ';
        ?>

        <?php

        ?>
        <div class="container" id="registration-form">
            <div class="image"></div>
        <form role="form" class="form-signin" method="post" action="<?php echo clean_url($_SERVER['PHP_SELF']); ?>">
        <section class="panel">
        <div class="panel-body">
        <?php
        if (isset($_SESSION['RegisterUserError']))
        {
            if ($_SESSION['RegisterUserError'] == 1)
            {   
                ?>
                <div class="alert alert-block alert-danger fade in">
                <strong>Fill all mandatory fields(*) for completing user registeration</strong>
                </div>  
                <?php
            }
            else if ($_SESSION['RegisterUserError'] == 2)
            {
                ?>
                <div class="alert alert-block alert-danger fade in">
                <strong>Entered passwords do not match</strong>
                </div> 
                <?php
            }
            else if ($_SESSION['RegisterUserError'] == 3)
            {
                ?>
                <div class="alert alert-block alert-danger fade in">
                <strong>Passwords must be 8 or more character longer</strong>
                </div> 
                <?php
            }
            else if ($_SESSION['RegisterUserError'] == 4)
            {
                ?>
                <div class="alert alert-block alert-danger fade in">
                <strong>There is already a user exist with this same username</strong>
                </div> 
                <?php
            }
            else if ($_SESSION['RegisterUserError'] == 5)
            {
                ?>
                <div class="alert alert-success fade in">
                <strong>Successfully completed the user registeration. However, your account is not verified unless you complete "Know your customer" process after login to your account.</strong>
                </div> 
                <?php
            }
            else
            {
                ?>
                <div class="alert alert-block alert-danger fade in">
                <strong>Unexpected error occured</strong>
                </div> 
                <?php
            }   
            unset($_SESSION['RegisterUserError']);
        }
        else
        {   
            ?>
            <div class="alert alert-success fade in">
            <strong>Fields indicated using * are mandatory in registeration</strong>
            </div>  
            <?php
        }
        ?>
        <div class="frm">
            inputs here
        </form>
        <div class="form-footer">
            <div class="row">
                <div class="col-xs-5 col-sm-5 col-md-5">
                    <i class="fa fa-check"></i> <a href="login.php"> Sign In </a>
                </div>
            </div>
        </div>
        </div>
        </div>
        <script src="js/bootstrap.min.js"></script>
        </body>
</html>
        <?php

    }
}   
?>

1 个答案:

答案 0 :(得分:0)

如果它在您的本地服务器上运行,请检查您的网络托管服务。大多数服务提供商会问你这三件事: 1.创建数据库 2.创建数据库用户 3.将用户分配到数据库

这些步骤可能会让您感到困惑,具体取决于您的主机,并且通常在您的cpanel数据库页面中执行,或者如果可用,请使用数据库创建向导。