2013-11-15 75 views
-1
Fatal error: Call to a member function bind_param() on a non-object 

所以我試着從表單的一些信息保存到我的數據庫,但得到這個錯誤試圖保存!HES MySQL連接的代碼mysqli的連接錯誤

<?php 
$mysql_host  = "localhost"; 
$mysql_username = "mydb"; 
$mysql_password = "db"; 
$mysql_database = "mydbase"; 

$mysqli = new Mysqli($mysql_host, $mysql_username, $mysql_password, $mysql_database); 
$prepare = $mysqli->prepare("INSERT INTO `datos`(`name`,`email`,`phone`,`zipcode`,`message`) VALUES (?,?,?,?,?)"); 
$prepare->bind_param("ssssss", $_POST['name'], $_POST['email'], $_POST['phone'], $_POST['zipcode'], $_POST['message']); 
$prepare->execute(); 
$mysqli->close(); 
?> 

我試着去當圖但不能做到!謝謝!

+4

一件事,你的'ssssss' = 6,你的POST值= 5 //刪除一個's' –

+0

在什麼弗雷德的頂部說,你應該做'sssis'因爲郵政編碼總是一個整數嗎? –

+0

嘗試添加'echo mysqli_error($ mysqli);'在行後面$ prepare = $ mysqli-> prepare' - 可能不正確的sql表定義。 – Alexander

回答

1

ssssss = 6,您$_POST值= 5

  • 刪除的s

一個但是,根據您的DB /場是如何設置,爲Arian stated可能需要sssis

嘗試/或。

在某些情況下,這可能不是必需的,但它們必須匹配編號爲5 & 5的代碼。

1

這不是連接錯誤,而是準備出錯。在頂部

ini_set('display_errors',1); 
error_reporting(E_ALL); 
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); 

添加這些行,看看它說

+0

'致命錯誤:未捕獲異常'mysqli_sql_exception'消息'列計數與第1行的值計數不匹配'這就是我得到的錯誤! –

+0

這顯然不適用於此查詢。檢查引發此錯誤的查詢 –