2017-02-06 4 views
0

Я знаю, что это было задано много раз, но я не могу понять, почему этот запрос не будет вставлять записи в базу данных mysql. Я получаю сообщение об успешном завершении, но записи фактически не помещаются в таблицу. Я потратил на это много часов и просто не могу понять, так что любая помощь была бы очень оценена. Я только что обновил свой сервер до php 5.6 из 5.3.Почему я не могу вставлять записи в базу данных MySQL?

<?php 
session_start(); 

$mysqli = new mysqli("localhost", "root", "usernmae", "mydatabase"); 
if (mysqli_connect_errno()) { 
    printf("Connect failed: %s\n", mysqli_connect_error()); 
    exit(); 
} 
include "php_includes/display_errors.php"; //show errors 

if(isset($_SESSION['user_session']) && !empty($_SESSION['user_session'])) { 

//Update Database 
$stmt = $mysqli->prepare("INSERT INTO tbl_collab (collab_userid, collab_username, file, tbl_upload_id) VALUES (?, ?, ?, ?)"); 
$stmt->bind_param('ssss',$user_id, $user_name, $file, $page_id); 


$user_id = $_POST['user_id']; 
$user_name = $_POST['user_name']; 
$file= $_POST['file']; 
$page_id= $_POST['page_id']; 

$stmt->execute(); 

if($stmt){ 
    echo"success"; 
} 
else { 
    echo "error"; 
} 
} 

// Close connection 
mysqli_close($mysqli); 

?> 
+0

Вы должны получить результат 'execute()', а не '' $ stmt'. т. е. вам понадобится: $ result = $ stmt-> execute(); ' – Raptor

ответ

1

Перекрестный контроль типов данных. Если тип данных тот же, то распечатайте сообщение об ошибке с помощью ошибки $ stmt-> и сообщите об ошибке.

+0

Это помогло мне обнаружить, что у моей базы данных есть слово. Благодарю. – JulianJ

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