2014-12-11 2 views
1

Я программирую с помощью соединения mysqli (я узнаю OOP для этого, но теперь мне нужно знать это процедурным способом), и мне нужно использовать mysqli_real_escape_string TONS раз, чтобы защитить каждый запрос.Можно ли сократить функцию mysqli real escape string, как это? PHP

Я только что сделал эту функцию после того, как соединение происходит для того, чтобы занять меньше места (более организованный) и время, чтобы написать каждый:

$con = @mysqli_connect($mysql_server, $mysql_user, $mysql_password, $mysql_database); 

function sql_escape($string) { 
    global $con; 
    return mysqli_real_escape_string($con, $string);  
} 

Является ли это хорошо? Я читал, что переменные глобализации не очень хорошие, я не понимаю, почему я не мог этого сделать.

Заранее благодарен!

+0

Передайте переменную соединения в своей функции, а не создавайте ее как глобальную. –

+0

Или, если вы используете> = 5.6, вы можете использовать функцию 'use function mysqli_real_escape_string как sql_escape;' – tigrang

+0

Я мог бы передать ее как параметр, но с этим код занимает меньше места, что может произойти, если я использую вот этот? – Agusfn

ответ

0

выглядит нормально, пока вы используете только одно соединение с базой данных в своем скрипте.

Глобаллы плохой стиль? Ну, это php-код, который является автоматическим отрицательным 5 баллов , чтобы начать с :)

+0

Я использую только 1 подключение к базе данных. Я не склонен использовать глобальный, по сути, единственный случай, который я видел, когда мне нужно было использовать его с подключением к базе данных. Что может пойти не так, если я сделаю это только в этом конкретном случае? – Agusfn

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