|
|
|
| Добрый день
У меня такая проблема - получаю из веб-формы данные,которые нужны взять из массива, перевести в строку и откавычить,т.к. эти данные будут использоваться в запросе.
Форма:
echo'<tr><td><input type=\'checkbox\' name=\'attach_id[]\' value='.$ZUSER.'></td><td>'.$ID_ZUSER.'</td><td>'.$NAME_USER.'</td><td>'.$TIME_CONNECT.'</td><td>'.$PROCESS.'</td></tr>';
Из неё беру $ids=implode(",",$_POST['attach_id']); и передаю в запрос:
$query="delete from ZM_connect where id_user in ($ids)";
но т.к. результат получается как SM1716,SM2200,SM6160, а не как 'SM1716','SM2200','SM6160' при выполнении запроса получаю ошибку. | |
|
|
|
|
|
|
|
для: Gallemar
(21.11.2016 в 10:32)
| | Сперва mysql_real_escape_string к данным, только пора уже знать, что расширение оригинального MySQL начиная с версии PHP 5.5.0 считается устаревшим, а в последующих версиях вообще удалено.
И только потом кавычки и ...
<?
if($ids = array_diff(array_map('trim', $_POST['attach_id']), array(''))) {
$ids = array_map('mysql_real_escape_string', $ids);
$query="DELETE FROM ZM_connect WHERE id_user IN('" . implode("','", $ids) . "')";
}
|
Идентификаторы просто офигительные. | |
|
|
|