2016-09-04 276 views
1

我想將表單數據插入到mysql中,但是當我輸入詳細信息並提交時,我無法獲取數據庫中的數據。我可以知道我錯在哪裏嗎?php&mysql表單數據沒有被插入到數據庫中

<?php 
 
// Same as error_reporting(E_ALL); 
 
ini_set('error_reporting', E_ALL); 
 

 
// Report all PHP errors (see changelog) 
 
error_reporting(E_ALL); 
 
echo "jgj" 
 
$servername = "localhost"; 
 
$username = "username"; 
 
$password = ""; 
 
$dbname = "sudhar"; 
 

 
// Create connection 
 
$conn = new mysqli($servername, $username, $password, $dbname); 
 
// Check connection 
 
if ($conn->connect_error) { 
 
    die("Connection failed: " . $conn->connect_error); 
 
} 
 
else 
 
{ 
 
\t echo "connected" 
 
} 
 
if(isset($_POST['submit'])) 
 
{ 
 
$Firstname=mysqli_real_escape_string($conn,$_POST['Firstname']); 
 
$Lastname=mysqli_real_escape_string($conn,$_POST['Lastname']); 
 
$Username=mysqli_real_escape_string($conn,$_POST['Username']); 
 
$email=mysqli_real_escape_string($conn,$_POST['email']); 
 
$Password=mysqli_real_escape_string($conn,$_POST['Password']); 
 

 
$sql="insert into useraccount(Firstname,Lastname,Username,email,Password)values('$Firstname','$Lastname','$Username','$Password','$email')"; 
 
$result=mysqli_query($conn,$sql) 
 
echo "data inserted" 
 
or die(mysql_error()); 
 
} 
 
    ?>
html,body 
 
{ 
 
margin:0px; \t 
 
height:100%; 
 
} 
 
.carousel-inner > .item > img, 
 
    .carousel-inner > .item > a > img { 
 
     width: 60%; 
 
     margin: auto; 
 
    } 
 
.content 
 
{ 
 
width:100%; 
 
height:400px; 
 
} 
 

 
.signup 
 
{ 
 
height:500px; 
 

 
} 
 
    .footer 
 
    { 
 
    position:relative; 
 
    \t background-color:black; 
 
    }
<!DOCTYPE html> 
 
<html lang="en"> 
 
<head> 
 
    
 
    <title>ASK</title> 
 
    <meta charset="utf-8"> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <link rel="stylesheet" type="text/css" href="boot.css"> 
 
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
 
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
</head> 
 
<body> 
 
<div class="jumbotron"> 
 
    <div class="container"> 
 
     <div class="row"> 
 
      
 
      <div class="col-md-6"> 
 
       <h1>school name</h1>      
 
      </div> 
 
      <div class="col-md-6"> 
 
       <img src="../project/photo/l.png" height="150px"/> 
 
      </div> 
 
     </div> 
 
     </div> 
 
</div> 
 

 
<nav class="navbar navbar-inverse navbar-fixed-top"> 
 
    <div class="container-fluid"> 
 
    <div class="navbar-header"> 
 
     <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar"> 
 
     <span class="icon-bar"></span> 
 
     <span class="icon-bar"></span> 
 
     <span class="icon-bar"></span> 
 
     </button> 
 
     <a class="navbar-brand" href="#mynavbar">schoolName</a> 
 
    </div> 
 
    <div class="collapse navbar-collapse" id="myNavbar"> 
 
     <ul class="nav navbar-nav"> 
 
     <li class="active"><a href="#">Home</a></li> 
 
     <li><a href="about.html" target=_self>About Us</a></li> 
 
     <li><a href="infra.html" target=_self>Infrastructure</a></li> 
 
     <li class="dropdown"> 
 
      <a class="dropdown-toggle" data-toggle="dropdown" href="">Administration<span class="caret"></span></a> 
 
      <ul class="dropdown-menu"> 
 
      <li><a href="stlogin.html">staff login</a></li> 
 
      <li><a href="stdetails.html">staff details</a></li> 
 
      <li><a href="class.html">class handling</a></li> 
 
      </ul> 
 
     </li> 
 
     
 
     </ul> 
 
     <ul class="nav navbar-nav navbar-right"> 
 
     <li><a href="signup.html"><span class="glyphicon glyphicon-user"></span> Sign Up</a></li> 
 
     <li><a href="login.html"><span class="glyphicon glyphicon-log-in"></span> Login</a></li> 
 
     </ul> 
 
    </div> 
 
    </div> 
 
</nav> 
 
<div class="container"> 
 
<div class="signup"> 
 
<form method="post" class="form-horizontal" action="user.php"> 
 
    <div class="form-group"> 
 
    <div class="col-xs-3"> 
 
     <label for="Firstname">Firstname:</label> 
 
     <input type="text" name="Firstname" class="form-control" id="fnmae" placeholder="Enter Firstname"> 
 
    </div></div> 
 
    
 
    <div class="form-group"> 
 
    <div class="col-xs-3"> 
 
     <label for="Lastname">Lastname:</label> 
 
     <input type="text" name="Lastname" class="form-control" id="lnmae" placeholder="Enter Lastname"> 
 
    </div></div> 
 
    
 
    <div class="form-group"> 
 
    <div class="col-xs-3"> 
 
     <label for="Username">Username:</label> 
 
     <input type="text" name="Username" class="form-control" id="unmae" placeholder="Enter Username"> 
 
    </div></div> 
 

 
    <div class="form-group"> 
 
    <div class="col-xs-3"> 
 
     <label for="email">Email:</label> 
 
     <input type="email" name="email" class="form-control" id="email" placeholder="Enter email"> 
 
    </div></div>   
 
    
 
    <div class="form-group"> 
 
    <div class="col-xs-3"> 
 
     <label for="pwd">Password:</label> 
 
     <input type="Password" name="Password" class="form-control" id="pwd" placeholder="Enter password"> 
 
    </div></div> 
 

 
    <button type="submit" class="btn btn-default">Submit</button><br> 
 
    
 
    </form> 
 
    </div> 
 
    </div> 
 
    <div class="footer nav"> 
 
    <p> [email protected] &copy; WWW.schools.com</p> 
 
    </div> 
 
    </body> 
 
    </html>

+2

**警告**:使用'mysqli'時,您應該使用[參數化查詢](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)和['bind_param' ](http://php.net/manual/en/mysqli-stmt.bind-param.php)將用戶數據添加到您的查詢。 **不要**使用手動轉義和字符串插值或串聯來實現此目的,因爲如果您忘記正確地轉義某些內容,您將創建嚴重的[SQL注入漏洞](http://bobby-tables.com/)。 – tadman

+0

您是否收到任何錯誤? –

+0

所以我應該刪除mysqli並用mysql替換 – sudharsan

回答

0

如果不考慮到其他錯誤,如果你只是想如何讓您運行的查詢: 有一些保留的命名約定,也許你的代碼可能會在某些情況下工作,把列名之間的引號。

INSERT into useraccount 
('Firstname','Lastname','Username','email','Password') 

VALUES 
    ($Firstname,$Lastname,$Username,$Password,$email); 

我建議你在放入查詢的變量中轉義字符。 這是給你的貴重物品:

http://php.net/manual/en/function.mysql-real-escape-string.php

不過:同時學習代碼是最糟糕的方式,不要使用此解決方案進行生產,如使用登錄憑證

0

變化

<button type="submit" class="btn btn-default">Submit</button><br>

<button type="submit" name="submit class="btn btn-default">Submit</button><br>

因爲$_POST['submit']沒有設置,因爲你忘了設置的名稱

1
$query=mysqli_query($con,"insert into useraccount('Firstname','Lastname','Username','email','Password')values($Firstname,$Lastname,$Username,$email,$Password)"); 

和改變按鈕名稱