值未插入表

时间:2018-07-23 21:14:16

标签: php mysql database mysqli

我需要我的代码帮助。注册后,我试图将用户详细信息插入数据库,但未将详细信息插入所选的表中。

在表中插入的项目中,将自动生成4个值。

以下是用于处理表单并将值插入数据库的php代码,请让我知道为什么未插入值。谢谢。

<?php
$msg = "";

    if(isset($_POST['add'])){
        
        $name = addslashes($_POST['name']);
        $email = addslashes($_POST['email']);
        $number = addslashes($_POST['number']);
        $address = addslashes($_POST['address']);
        $balance = addslashes($_POST['balance']);
        $username = addslashes($_POST['username']);

            function generateAccountString($length = 10) 
            {

                $characters = '0123456789';
                $charactersLength = strlen($characters);
                $randomString = '';

                for ($i = 0; $i < $length; $i++) 
                {

                    $randomString .= $characters[rand(0, $charactersLength - 1)];

                }

                return $randomString;

            }

            $account = generateAccountString();

            function generateAccessString($length = 6) 
            {

                $characters = '0123456789abcdefghijklmnopqrstuvwxyz';
                $charactersLength = strlen($characters);
                $randomString = '';

                for ($i = 0; $i < $length; $i++) 
                {

                    $randomString .= $characters[rand(0, $charactersLength - 1)];

                }

                return $randomString;

            }

            $access = generateAccessString();

            function generatePasswordString($length = 8) 
            {

                $characters = '0123456789abcdefghijklmnopqrstuvwxyz';
                $charactersLength = strlen($characters);
                $randomString = '';

                for ($i = 0; $i < $length; $i++) 
                {

                    $randomString .= $characters[rand(0, $charactersLength - 1)];

                }

                return $randomString;

            }

            $password = generatePasswordString();

            function generateCotString($length = 6) 
            {

                $characters = '0123456789abcdefghijklmnopqrstuvwxyz';
                $charactersLength = strlen($characters);
                $randomString = '';

                for ($i = 0; $i < $length; $i++) 
                {

                    $randomString .= $characters[rand(0, $charactersLength - 1)];

                }

                return $randomString;

            }

            $cot = generateCotString();

        if($name != "" && $email != "" && $username != "" && $address != "" && $number != "" && $balance != ""){

            $_SESSION['name'] = $name;
            $_SESSION['email'] = $email;
            $_SESSION['number'] = $number;
            $_SESSION['address'] = $address;
            $_SESSION['balance'] = $balance;
            $_SESSION['username'] = $username;
            $_SESSION['cot'] = $cot;
            $_SESSION['access'] = $access;
            $_SESSION['account'] = $account;
            $_SESSION['password'] = $password;

            $sql = "INSERT INTO `user`(`name`, `email`, `number`, `address`, `acc-no`, `balance`, `username`, `password`, `cot`, `access`) VALUES ('$name','$email','$number','$address','$account','$balance','$username','$password','$cot','$access')";
            
            if (mysqli_query($con, $sql)) {
            header ('Location: successful');
            }
            else{
                $msg = "Something went wrong, please try again.";
            }

            
        } else { 
        $msg = "Please Fill Out All Fields!"; 
        }
    }   

?>

我将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试将您的INSERT查询更改为此:

$sql = "INSERT INTO `user`(`name`, `email`, `number`, `address`, `acc-no`, `balance`, `username`, `password`, `cot`, `access`) VALUES ('{$name}','{$email}','{$number}','{$address}','{$account}','{$balance}','{$username}','{$password}','{$cot}','{$access}')";