2015-01-24 4 views
-1

Надеются, что вы, ребята, можете помочь мне, я пытался выяснить, что, кажется, моя ошибка, но безрезультатно, вот мой код:MySQLi запрос не вставляет строку в базе данных

**This is my index.php** 

<?php 
include('config.php'); 
if($_POST['submit']=='Borrow') 
{ 
    $mysqli->query("INSERT INTO `borrowersprofile`(`lastname`, `firstname`, `middlename`) VALUES(
          '".$_POST['lastname']."', 
          '".$_POST['firstname']."', 
          '".$_POST['middlename']."', 
          NOW())"); 

    header("Location: index.php"); 
    exit; 
} 
?> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
<link href="css.css" rel="stylesheet" type="text/css" /> 
</head> 

<body> 
<form method="post" action=""> 
<label for="lastname">Lastname:</label> 
<input name="lastname" type="text" id="lastname" style="width:120px;"/> 

<label for="firstname">Firstname:</label> 
<input name="firstname" type="text" id="firstname" style="width:120px;"/> 

<label for="middlename">M.I:</label> 
<input name="middlename" type="text" id="middlename" style="width:35px;"/><br /> 
<input type="submit" name="submit" value="Borrow" /> 

</form> 
</body> 
</html> 

а вот config.php

<?php 
$db_username = 'root'; 
$db_password = ''; 
$db_name = 'bsystem'; 
$db_host = 'localhost'; 
$mysqli = new mysqli($db_host, $db_username, $db_password,$db_name); 
?> 

Я пытался проверить и даже пытался переделать базу данных, но его до сих пор не добавляя данные, кстати, это школа проект так безопасности действительно не имеет значения, надеюсь, вы, ребята, можете мне помочь! Благодарю.

+1

ли вы проверить статус возврата запроса вставки в базе данных? – Chandru

+2

Вы даете пять значений переменной в то время как четыре в colun name – 4302836

+0

Безопасность всегда имеет значение. – sevenseacat

ответ

0

Как отметил @ user328

1) Предполагая ID или primary key вашей таблицы AUTO_INCREMENT, поэтому вам не нужно упоминать ID столбец в запросе. Sql автоматически вставляет его для вас.

2) Вам нужно указать имя столбца, где следует сохранить значение, возвращаемое now().

if($_POST['submit']=='Borrow') 
{ 
$mysqli->query("INSERT INTO `borrowersprofile`(`lastname`, `firstname`, `middlename`, `DATE`) VALUES(
         '".$_POST['lastname']."', 
         '".$_POST['firstname']."', 
         '".$_POST['middlename']."', 
         NOW())"); 

header("Location: index.php"); 
exit; 

}

0

Попытка создать эту таблицу в базе данных, а затем использовать сценарий ниже.

таблицы SQL:

CREATE TABLE `borrowersprofile` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
`lastname` VARCHAR(100) NOT NULL, 
`firstname` VARCHAR(100) NOT NULL, 
`middlename` VARCHAR(100) NOT NULL, 
`datetime` DATETIME NOT NULL 
)ENGINE=InnoDB; 

index.php

<?php 
require_once('./config.php'); 

if(!empty($_POST['lastname']) AND !empty($_POST['firstname']) AND !empty($_POST['middlename'])){ 

    $lastname = $_POST['lastname']; 
    $firstname = $_POST['firstname']; 
    $middlename = $_POST['middlename']; 

    if ($stmtint = $mysqli->prepare("INSERT INTO `borrowersprofile`(`lastname`, `firstname`, `middlename`, `datetime`) VALUES(?, ?, ?, NOW())") { 

     $stmtint->bind_param("sss", $lastname, $firstname, $middlename); 

     if ($stmtint->execute()) { 
      $stmtint->close(); 
      echo "User saved successfully!";   
     }else{ 
      die("Error Message:".$mysqli->error); 
     } 

     header("Location: index.php"); 
     exit; 
    } 
} 
?> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
<link href="css.css" rel="stylesheet" type="text/css" /> 
</head> 

<body> 
<form method="post" action=""> 
<label for="lastname">Lastname:</label> 
<input name="lastname" type="text" id="lastname" style="width:120px;"/> 

<label for="firstname">Firstname:</label> 
<input name="firstname" type="text" id="firstname" style="width:120px;"/> 

<label for="middlename">M.I:</label> 
<input name="middlename" type="text" id="middlename" style="width:35px;"/><br /> 
<input type="submit" name="submit" value="borrow" /> 

</form> 
</body> 

config.php

<?php 
$db_username = 'root'; 
$db_password = ''; 
$db_name = 'bsystem'; 
$db_host = 'localhost'; 
$mysqli = new mysqli($db_host, $db_username, $db_password,$db_name); 
if ($mysqli->connect_error) { 
    die('Connect Error (' . $mysqli->connect_errno . ') ' 
      . $mysqli->connect_error); 
} 
?> 
Смежные вопросы