插入数据mysqli不起作用

时间:2016-07-19 11:36:02

标签: php mysql mysqli

这是我的HTML表格部分......我无法理解我的错误在哪里

<!DOCTYPE html>
<html>

<head>
  <title></title>
  <link rel="stylesheet" type="text/css" href="loginStyle.css">
  <link href="Bootstrap/css/bootstrap.min.css" rel="stylesheet">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1 user-scalable=no">
  <link href='https://fonts.googleapis.com/css?family=Jura:600' rel='stylesheet' type='text/css'>
  <link rel="stylesheet" type="text/css" href="Font Awseome Glyphicons/css/font-awesome.min.css">
  <link href='https://fonts.googleapis.com/css?family=Lora:700' rel='stylesheet' type='text/css'>
  <link href='https://fonts.googleapis.com/css?family=Lato' rel='stylesheet' type='text/css'>
  <link rel="stylesheet" href="Owl Carousel/owl-carousel/owl.carousel.css">
  <link rel="stylesheet" href="Owl Carousel/owl-carousel/owl.theme.css">
</head>

<body>


  <div class="container">
    <div class="row">
      <div class="col-md-12" style="margin-top:8%">
        <h2 class="text-center">Be a Part of World</h2>
      </div>
    </div>
    <div class="row">
      <div class="col-md-6 col-md-offset-3">
        <form role="form" id="loginForm" action="regCheck.php" method="POST">
          <div class="form-group">
            <label for="regName">
              <h4>Name</h4>
            </label>
            <input type="text" id="regName" class="form-control" placeholder="Your name here..." name="name">
            <div class="alert"></div>
          </div>
          <div class="form-group">
            <label for="regLogin">
              <h4>Login</h4>
            </label>
            <input type="text" placeholder="Login Here..." id="regLogin" class="form-control" name="login">
            <div class="alert"></div>
          </div>
          <div class="form-group">
            <label for="regPass">
              <h4>Password</h4>
            </label>
            <input type="password" placeholder="Password Here..." id="regPass" class="form-control" name="pass">
            <div class="alert"></div>
          </div>
          <div class="form-group">
            <input type="submit" value="Sign Up" class="btn btn-danger btn-lg" id="regSubmit" name="submit">
          </div>
        </form>
      </div>
    </div>
    <div class="row">
      <div class="col-md-12">
        <h3 class="text-center"><strong>...0r Join Us With</strong></h3>
      </div>
    </div>
    <div class="row">
      <div class="col-md-6 col-md-offset-4">
        <ul class="list-inline">
          <li><a href="facebook.com"><span class="fa fa-facebook-official " aria-hidden="true"></span> Facebook</a>
          </li>
          <li><a href="twitter.com"><span class="fa fa-twitter" aria-hidden="true"></span> Twitter</a>
          </li>
          <li><a href="youtube.com"><span class="fa fa-youtube " aria-hidden="true"></span> Youtube</a>
          </li>
          <li><a href="instagram.com"><span class="fa fa-instagram " aria-hidden="true"></span> Instagram</a>
          </li>
        </ul>
      </div>
    </div>
  </div>

  <script type="text/javascript" src="JQuery/jquery-1.11.3.min.js"></script>
  <script src="Owl Carousel/owl-carousel/owl.carousel.js"></script>
  <script src="Bootstrap/js/bootstrap.min.js"></script>
  <script type="text/javascript" src="script.js"></script>
</body>

</html>

以下是检查注册的部分

<?php
$con = mysqli_connect("localhost", "root", "");
if (!$con) {
    die("Failed Databse Connection");
}

$name = $_POST["name"];
$login = $_POST["login"];
$pass = $_POST["pass"];
$query = "INSERT INTO db_users(name, pass,login) VALUES ('$name', '$pass', '$login')";

if (isset($_POST["submit"])) {
    mysqli_query($con, $query);
}
?>

5 个答案:

答案 0 :(得分:1)

你的mysqli语法混合了简单的mysql

您必须在mysqli_connect

中将数据库名称作为最后一个参数
$con = mysqli_connect("localhost","root","","databasename");

答案 1 :(得分:1)

您忘了选择数据库

$con = mysqli_connect("localhost","root","","NameOfYourDatabase");

PHP manual for mysqli_connect()

答案 2 :(得分:1)

请在mysqli_connect函数中提及数据库名称。

mysqli_connect("localhost", "root", "", "dbName");

答案 3 :(得分:0)

这应该是它的结构:

<?php

    $con = mysqli_connect("host","username","password","database name");
    if (!$con) {
        die("Failed Databse Connection");
    }

    $name = $_POST["name"];
    $login = $_POST["login"];
    $pass =  $_POST["pass"];
    $query = "INSERT INTO db_users(name, pass,login) VALUES ('$name', '$pass', '$login')";

        if (isset($_POST["submit"])) {
            mysqli_query($con,$query);
        }

?>

但是你会得到一个错误,因为它会在POST数组中寻找非发布键,所以试试这个:

<?php

    $con = mysqli_connect("host","username","password","database name");
    if (!$con) {
        die("Failed Databse Connection");
    }





     if (isset($_POST["submit"])) {
        $name = $_POST["name"];
        $login = $_POST["login"];
        $pass =  $_POST["pass"];
        $query = "INSERT INTO db_users(name, pass,login) VALUES ('$name', '$pass', '$login')";
        mysqli_query($con,$query);
        }

?>

答案 4 :(得分:0)

您可以在mysqli_select_db函数中使用PHP数据库mysqli语法并提及数据库名称,如下所示:

$ connect = mysqli_connect(&#34; database_hostname&#34;,&#34; database_username&#34;,&#34; database_password&#34;); mysqli_select_db($连接,&#34; DATABASE_NAME&#34);