Я очень расстроен. Я хочу иметь возможность вставлять в мои имена базы данных одинарные кавычки – например, O'Connor. Итак, при вставке в БД я делаю: $lname = mysql_real_escape_string($_POST['lname']); И затем я вставляю $ lname в БД. Когда он находится в БД, он выглядит как О'Коннор. Итак, если я должен вспомнить эту фамилию в своем веб-приложении, […]
Есть ли более простой способ безопасного извлечения представленных переменных, кроме следующих? if(isset($_REQUEST['kkld'])) $kkld=mysql_real_escape_string($_REQUEST['kkld']); if(isset($_REQUEST['info'])) $info=mysql_real_escape_string($_REQUEST['info']); if(isset($_REQUEST['freq'])) $freq=mysql_real_escape_string($_REQUEST['freq']); (И: вы бы использовали isset() в этом контексте?)
Возможный дубликат: mysql_real_escape_string VS добавляет Если они не делают то же самое, какая разница? Разделитель значений внутри запроса MySQL является ' не так ли? Или, может быть, " но это также ускользает от добавок. В других механизмах базы данных я понимаю (и определенно внутри db-обложек, таких как PDO), но почему так много людей так любят […]
Я пытаюсь защитить себя от SQL-инъекции и использую: mysql_real_escape_string($string); При публикации HTML это выглядит примерно так: <span class="\"className\""> <p class="\"pClass\"" id="\"pId\""></p> </span> Я не уверен, сколько еще добавлений, добавленных real_escape_string, поэтому не хотят просто заменять несколько и пропустить других … Как мне «декодировать» это обратно в правильно отформатированный HTML-код с чем-то вроде: html_entity_decode(stripslashes($string));
Я просто переехал в новую хостинговую компанию, и теперь всякий раз, когда строка сбегает, используя: mysql_real_escape_string($str); в базе данных остаются слэш. Это первый случай, когда я когда-либо видел это, поэтому ни один из моих скриптов не использует stripslashes() больше. Это на CentOS 4.5 64-разрядной версии php 5.2.6 как fastcgi на сервере lighttpd 1.4. Я гарантировал, […]