Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Безопасно ли?

Сообщения:  [1-10]    [11-20]  [21-21] 

 
 автор: Maxam   (01.11.2012 в 22:32)   письмо автору
 
   для: confirm   (01.11.2012 в 16:11)
 

Спасибо.

  Ответить  
 
 автор: confirm   (01.11.2012 в 16:11)   письмо автору
 
   для: Maxam   (01.11.2012 в 15:40)
 

Вы можете присвоить результат этого выражения другой переменной, оставив таким образом входной массив неизменным.
Ну а чтобы понять, что нужно сделать чтобы убрать результат работы mysql_real_escape_string():
а) прочесть внимательно о назначении данной функции (вопрос "А addslashes вместо..." отпадет сам собою), что она делает.
б) экранируйте ею тестовую строку с выводом на экран - поймете что надо сделать, чтобы "Как от них убрать все это экранирование?"

И самое главное - я вам давал ссылку в руководстве на раздел касающийся безопасности, изучать, причем все и досконально, пока не поймете. А это только малая толика данного вопроса.

  Ответить  
 
 автор: Maxam   (01.11.2012 в 15:40)   письмо автору
 
   для: confirm   (30.10.2012 в 13:38)
 

Простите, что снова с вопросом.

Вот вроде сделал все проверки правильно, плюс теперь перед запросом mysql поставил:
$_POST=array_map('mysql_real_escape_string',$_POST);

Правда, теперь мне нужно после запроса к mysql вновь использовать некоторые переменные. Как от них убрать все это экранирование?

Подумал использовать stripslashes, но она обратная от addslashes, поэтому неуверен. А addslashes вместо mysql_real_escape_string не подойдёт?

  Ответить  
 
 автор: Maxam   (30.10.2012 в 17:07)   письмо автору
 
   для: confirm   (30.10.2012 в 16:53)
 

Огромное спасибо. Буду переписывать все строки в php :)

  Ответить  
 
 автор: confirm   (30.10.2012 в 16:53)   письмо автору
 
   для: Maxam   (30.10.2012 в 16:48)
 

Для данной операции, конечно нет, ибо от строки останется 0.
Но тут не столь проверка на ноль нужна, сколь приведение типа к integer с последующей проверкой на величину вами ожидаемую, если это нужно или важно.

  Ответить  
 
 автор: Maxam   (30.10.2012 в 16:48)   письмо автору
 
   для: confirm   (30.10.2012 в 16:26)
 

Проверить, что там должно быть число - это понятно. Я к тому, что в данном случае не нужно никаких экранаций, переводов символов и прочего?

  Ответить  
 
 автор: confirm   (30.10.2012 в 16:26)   письмо автору
 
   для: Maxam   (30.10.2012 в 16:19)
 

А вы выполните вот такое:
<?
$_GET
['page'] = 'тра-ла-ла';
echo 
$_GET['page']*10;

Ожидаем для вас результат?

Вы вопрос задаете - надо ли? Ответ - надо, а как, это уже зависит и от данных, и для чего они.

  Ответить  
 
 автор: Maxam   (30.10.2012 в 16:21)   письмо автору
 
   для: confirm   (30.10.2012 в 03:51)
 

А addslashes() не то же самое?

  Ответить  
 
 автор: confirm   (30.10.2012 в 16:20)   письмо автору
 
   для: Maxam   (30.10.2012 в 16:14)
 

Сперва сюда, и обязательно с этим материалом ознакомиться, ибо ваши вопросы, это нечто поверхностное и вами не понимаемое - зачем, и что к чему.

  Ответить  
 
 автор: Maxam   (30.10.2012 в 16:19)   письмо автору
 
   для: confirm   (30.10.2012 в 16:17)
 

Что мне нужно сделать перед этим кодом?
<?php
// ...
for($i=$_GET['page']*10$i<=$_GET['page']*10+10$i++)
{
     
// ...
}
// ...
?>

  Ответить  

Сообщения:  [1-10]    [11-20]  [21-21] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования