2017-05-26 61 views
0

这是我收到错误的代码无法输入数据:没有选择数据库 我试着在localhost上做这个代码。我无法找出问题,因为我已经创建数据库mb以及表格。无法输入数据:没有选择数据库

<HTML> <HEAD> 
<TITLE>Sample Site</TITLE> </HEAD> 
<BODY> 
<body text="Blue" bgcolor="Bisque"> <h1 align="center">User query...! 
</h1> <?php 
if(isset($_POST['add'])) { 
$conn = mysqli_connect('localhost','',''); 

if(! $conn) { 
die('Could not connect: ' . mysqli_error($conn)); 
} 
$name = $_POST['name']; 
$email = $_POST['email']; 
$subject = $_POST['subject']; 
$messege = $_POST['messege']; 
$sql = "INSERT INTO users ". "(name,email,subject,messege) ". 
"VALUES('$name','$email','$subject', '$messege')"; 
$conn->select_db('mb'); 
$retval = mysqli_query($conn, $sql); if(! $retval) { 
die('Could not enter data: ' . mysqli_error($conn)); } 
echo "Entered data successfully\n"; 
mysqli_close($conn); }else { 
?> 
<form method = "post" action = "<?php $_PHP_SELF ?>"> 
<table width = "400" border = "0" > <tr> 
<td width = "100">Name</td> <td><input name = "name" type = "text" 
id = "name"></td> </tr> 
<tr> 
<td width = "100">Email</td> <td><input name = "email" type = "text" 
id = "email"></td> </tr> 
<tr> 
<td width = "100">Subject</td> <td><input name = "subject" type = "text" 
id = "subject"></td> </tr> 
<tr> 
<td width = "100">Messege</td> <td><input name = "messege" type = "text" 
id = "messege"></td> </tr> 
<tr> 
<td width = "100"> </td> <td> </td> 
</tr> 
<tr> 
<td width = "100"> </td> <td> 
<input name = "add" type = "submit" id = "add" value = "Add user"> 
</td> </tr> 
</table> </form> 
<?php } 
?> </BODY> 
</HTML> 

回答

0
$conn = mysqli_connect("localhost", "my_user", "my_password", "my_database_name"); 

或您的连接estabilished你可以用一个单独的函数选择数据库后:

mysqli_select_db($conn, "my_database_name"); 
0

mysqli_connect包含4个参数,你必须到第四参数添加数据库名称即

mysqli_connect(“127.0.0.1”,“my_user”,“my_password”,“my_db”);

0

您的mysqli_connect函数有错误。 它应该是

$conn = mysqli_connect("localhost","root","","databaseName"); 

代替

$conn = mysqli_connect('localhost','',''); 
0

及其与您mysqli_connect问题。尝试用下面的代码连接

// Create connection 
$conn = mysqli_connect('servername', 'username', 'password', 'dbname'); 
// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 
0

除了提供的答案,您应该使用准备好的语句。你正在使用MYSQLI。

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
$dbname = "myDB"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 

// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

// prepare and bind 
$stmt = $conn->prepare("INSERT INTO `users`(`name`, `email`, `subject`,`messege`) VALUES (?, ?, ?,?)");//use placeholders 
$stmt->bind_param("ssss", $name,$email, $subject, $message);//bind placeholders to values.no need to escape. 
if($stmt->execute() == true){ 
    echo 'Successfully saved using prepared statements'; 
} else { 
    echo 'Error!Because: '.$stmt->error; 
    exit; 

}

+0

该错误走开了,但现在这个错误就要 无法输入数据:在“字段列表”未知列“messege” –

+0

这是你的错误。你的拼写可能是错的。是'messege'还是'message'?与你的数据库确认 – Akintunde007

0

添加您的用户名和数据库名称

$conn = mysqli_connect('localhost','username here','','databasename here');