2015-12-17 83 views
-1

嘗試升級我的應用程序到mysqli。現在我有以下問題:mysql到mysqli的變化,麻煩與mysqli_real_escape_string

連接(在外部INC文件,正常工作)

$dbh = mysqli_connect ($DB_HOST, $DB_BN, $DB_PW) or die ('Datenbank konnte nicht erreicht werden: ' . mysqli_error()); 
mysqli_select_db ($DB_DB); 

選擇:

$sql = mysqli_query("SELECT * FROM tbl_one WHERE bLogin = '".mysqli_real_escape_string($benu)."'"); 

的mysql_real_escape_string無法正常工作,使用var $ benu是''..

感謝您的幫助

+0

閱讀手冊和學習http://php.net/manual/en/mysqli.query.php --- http://php.net/manual/en/mysqli.real-escape-string .php --- http://php.net/manual/en/mysqli.select-db.php --- http://php.net/manual/en/mysqli.error.php - 你的代碼失敗所有重要。 –

+0

你怎麼知道** mysql_real_escape_string不能正常工作,var $ benu是'** –

+0

你需要提供連接對象到'mysqli_real_escape_string'函數調用以及你想要轉義的值 – RamRaider

回答

0

您有問題mysqli_select_db()。它期望參數1是連接的$ link。

mysqli_select_db ($dbh, $DB_DB); 

或者調用mysqli_connect()功能時,你可以只選擇DB:

$dbh = mysqli_connect ($DB_HOST, $DB_BN, $DB_PW, $DB_DB) or die ('Datenbank konnte nicht erreicht werden: ' . mysqli_error()); 

和功能mysqli_real_escape_string()還預計參數1是$link

mysqli_real_escape_string($link, $benu);