2015-10-09 6 views
0

Я пробовал много раз, соединение успешно, но я не могу вставить данные, пожалуйста, помогите мне.Как вставить данные в базу данных mysql (wamp) через php?

Следующий мой код, я только что добавил проверку if, чтобы проверить, не добавляет ли запрос какие-либо данные в базу данных, тогда он должен дать какое-то указание, чтобы его высказывание не могло быть опубликовано. Когда я вижу в таблице базы данных из базы данных wamp, данные не добавляются и не добавляются в таблицу, пожалуйста, помогите мне, это будет очень признательно. Благодарю.

<?php 
    if(isset($_POST['id']) && isset($_POST['name']) && isset($_POST['semester']) && isset($_POST['section'])): 
    $post_id = $_POST['id']; 
    $post_name = $_POST['name']; 
    $post_semester = $_POST['semester']; 
    $post_section = $_POST['section']; 

    $link = new mysqli('localhost','root','','registration'); 

    if($link->connect_error) 
     die('connection error: '.$link->connect_error); 

    $sql = "INSERT INTO student_info(student_id, student_name, semester, section) VALUES('".$post_id."', '".$post_name."', '".$post_semester."', '".$post_section."',)"; 

    //echo $sql;  

    $result = $link->query($sql); 

    if($result > 0): 
     echo 'Successfully posted'; 
    else: 
     echo 'Unable to post'; 
    endif; 

    $link->close(); 
    die(); 
    endif; 
    ?> 
    <!DOCTYPE html> 
    <html> 
    <head> 
    </head> 
    <body> 
     <h1>Student Registration</h1> 
     <form action="add.php" method="post"> 
     Student ID : <input type="text" name="id"/><br><br> 
     Student Name : <input type="text" name="name"/><br><br> 
     Semester : <input type="text" name="semester"/><br><br> 
     Section : <input type="text" name="section"/><br><br> 

     <input type="submit" value="create"/> 
     </form> 
    </body> 
    </html> 
+0

вставка echo $ link-> ошибка; после того, как не удалось отправить сообщение и поделиться с нами сообщением об ошибке. Вы уверены, что поле id должно быть заполнено вручную? – Shadow

+0

Вся цель умаления mysql и попросить людей использовать mysqli - избежать этого типа запроса: «INSERT INTO student_info (student_id, student_name, semester, section) VALUES (« ». $ Post_id." ',' ". $ Post_name . "," ". $ post_semester." ',' ". $ post_section." ',) "; – e4c5

ответ

3

В конце SQL имеется дополнительная запятая (,) в вашем SQL. Правильным будет -

$sql = "INSERT INTO student_info(student_id, student_name, semester, section) VALUES('".$post_id."', '".$post_name."', '".$post_semester."', '".$post_section."')"; 

Я также был в состоянии видеть ошибку «Невозможно сообщение» с текущим кодом, так что работает отлично.

+0

большое спасибо, я пережил. –

1

Попыться;

<?php 
if(isset($_POST['id']) && isset($_POST['name']) && isset($_POST['semester']) && isset($_POST['section'])){ 
$post_id = $_POST['id']; 
$post_name = $_POST['name']; 
$post_semester = $_POST['semester']; 
$post_section = $_POST['section']; 

$link = new mysqli('localhost','root','','registration'); 

if($link->connect_error) 
    die('connection error: '.$link->connect_error); 

$sql = "INSERT INTO student_info(student_id, student_name, semester, section) VALUES('$post_id', '$post_name', '$post_semester', '$post_section')"; 

//echo $sql;  

$result = $link->query($sql); 

if($result){ 
    echo 'Successfully posted'; 
}else{ 
    echo 'Unable to post'; 
} 

$link->close(); 
die(); 

} 
?> 
+0

Несмотря на то, что ваш ответ верен, но ответ - это не просто ответ на код, вы также должны объяснить, почему он не работает, и почему вы работаете. –

Смежные вопросы