Вопрос по mysqli, php – как избежать строки в MySQL

4

В старом коде mysql (), чтобы избежать строки, я сделал это:

t.TeacherUsername = '".mysql_real_escape_string($teacherusername)."'

Я изменяю свой код на mysqli, но то, что я хочу знать наверняка и быть в безопасности, чтобы избежать строки в mysqli, это так, как показано ниже:

t.TeacherUsername = '".mysqli_real_escape_string($teacherusername)."'

Также для подключения к базе данных mysqli это так:

$username="xxx";
$password="xxx";
$database="xxx";

mysqli_connect('localhost',$username,$password);

mysqli_select_db($database) or die( "Unable to select database");

Все, что я сделал, это изменил mysql на mysqli, это правильно?

ОБНОВИТЬ:

Теперь это правильный способ подключения к базе данных с помощью mysqli:

$username="xxx";
$password="xxx";
$database="mobile_app";

$mysqli = new mysqli("localhost", $username, $password, $database);

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
возможный дубликатIs using mysqli_real_escape_string enough to secure my query string? JJJ

Ваш Ответ

1   ответ
4

Вы ДОЛЖНЫ использовать ресурс ссылки MySQL, возвращенныйmysqli_connect в качестве первого параметраmysqli_real_escape_string.

Пример:

$username="xxx";
$password="xxx";
$database="xxx";

$my = mysqli_connect('localhost',$username,$password);

mysqli_select_db($my, $database) or die( "Unable to select database");

$t->TeacherUsername = "'" . mysqli_real_escape_string($my, $teacherusername). "'";

Похожие вопросы