2016-03-02 51 views
-1

我試圖通過PHP獲取兩個輸入並將其添加到數據庫中。我得到的誤差是無法將數據添加到PHP中的表中

警告:mysqli_query()預計至少2個參數,1 C中給出:\ XAMPP \ htdocs中\形成具有db.php中上線24

警告:mysqli_query() :用C空查詢:上線25

這裏\ XAMPP \ htdocs中\形成db.php中是

<?php 
if(isset($_GET['name']) || isset($_GET['id'])) 
{ 

$username = $_GET['name']; 
$userid = $_GET['id']; 
} 

$host_name = 'localhost'; 
$user = 'root'; 
$password = ''; 
$database = 'test'; 

$connection = mysqli_connect($host_name,$user,$password,$database); 
if ($connection) { 
    echo "Connected to the DB"; 
    # code... 
} 
else 
{ 
    echo "Not Connected"; 
} 

$sql = mysqli_query("INSERT INTO `employee` (employee_id , Name) VALUES ($userid , $username)"); 
if (mysqli_query($connection,$sql)) { 
    # code... 
    echo "Values added to the table"; 
} 

else 
{ 
    echo "values not added".mysqli_error($connection); 
} 

?> 

<form action="Form with DB.php" method="GET"> 
Enter Employee Name : <input type = "text" name = "name"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
Enter Employee ID : <input type = "text" name = "id"><br> 
<input type = "submit" name="submit" value="Submit"> 
+2

你的代碼以及其它諸多問題,尤其是[SQL注入攻擊(http://bobby-tables.com)漏洞,帶引號的值,具有完全不同的參數caling查詢兩次,胡說等等等等。基本上你需要在這些函數上使用RTFM,並清理所有與此代碼有關的事情。 –

回答

0

你做錯了,你在呼喚mysqli_query兩次使用代碼而不是這個

$sql = "INSERT INTO `employee` (employee_id , Name) VALUES ('$userid', '$username')"; 
mysqli_query($connection,$sql); 
+0

我已經像你提到的那樣改變了。但也沒有工作。 – user3196569

+0

你得到了什麼?錯誤語法錯誤或? – Armen

+1

是的,它的作品。但我得到了另一個錯誤** MYSQL - INSERT錯誤,未知列在字段列表**。我通過將變量放在一個單引號中來解決它$ sql =「INSERT INTO'employee'(employee_id,Name)VALUES('$ userid','$ username')」); mysqli_query($ connection,$ sql) – user3196569