У меня есть запрос MySQL, который требует, чтобы параметры были заключены в "" или ",
если у меня есть массив, переданный этой функции:
function orderbyfield($column, array $selection)
{
// will it be alright (secure) to do this?
foreach ($selection as $s)
{
$s = '"' . $s . '"';
}
$string = implode(',', $selection)
return array($column, $string);
}
и передайте его
function generate_sql()
{
$fields = $this->orderbyfield(); // assuming the code is in a class
$sql = 'SELECT FIELDS FROM TABLE ORDER BY FIELD (' . $fields[0] . ',' . mysql_real_escape_string($fields[1]));
}
будут ли проблемы с безопасностью при таком подходе?
EDIT
Предположим, что код находится в классе, сделал необходимое добавление $ this ->
EDIT
опечатка на foreach