ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #15751  
Старый 24.04.2010, 12:57
Аватар для pento
pento
Участник форума
Регистрация: 03.07.2006
Сообщений: 147
Провел на форуме:
438137

Репутация: 66
По умолчанию

Цитата:
Сообщение от AtomoS  
собственно возможно ли объеденить все функции в 1?
чтобы запросы были с проверкой на безопастность...
Да, не изобретать велосипел и использовать встроенные механизмы нормальной работы с БД. google://php pdo mysql
http://phpfaq.ru/slashes#prepared
 
Ответить с цитированием

  #15752  
Старый 24.04.2010, 12:59
Аватар для j0ker13
j0ker13
Участник форума
Регистрация: 28.07.2008
Сообщений: 199
Провел на форуме:
861008

Репутация: 58
По умолчанию

PHP код:
function filtr($data)
{
    
$filter = array("select""delete""union""update""insert","\\""'"","";""--""-""%20""%27"" ""`""=""%");
    
$filter_data str_replace($filter""strtolower($data));
    return 
$filter_data;
}  

 function 
sql($query ""$param = array())
{
    if (!
is_array($param) || count($param) == 0)
    {
        return 
mysql_query(filtr($query));
    }
    else
    {
        foreach (
$param as $key => $val)
        {
            
$query str_replace("{".$key."}"$val$query);
        }
        return 
mysql_query(filtr($query));
    }

tak?
 
Ответить с цитированием

  #15753  
Старый 24.04.2010, 13:19
Аватар для wildshaman
wildshaman
Постоянный
Регистрация: 16.04.2008
Сообщений: 889
Провел на форуме:
12942062

Репутация: 1550


Отправить сообщение для wildshaman с помощью ICQ
По умолчанию

Такое обходится элементарно
selselectect
/*
()
 
Ответить с цитированием

  #15754  
Старый 24.04.2010, 14:53
Аватар для phpdreamer
phpdreamer
Постоянный
Регистрация: 26.07.2009
Сообщений: 321
Провел на форуме:
444589

Репутация: 123
Отправить сообщение для phpdreamer с помощью ICQ
По умолчанию

ну а также UnIoN , upDate и т.п.
нольбайт тож пройдет...

короче, mysql_real_escape_string() в помощь...
только логику скрипта придется переделывать
 
Ответить с цитированием

  #15755  
Старый 24.04.2010, 14:58
Аватар для Redwood
Redwood
Участник форума
Регистрация: 10.09.2009
Сообщений: 120
Провел на форуме:
2212846

Репутация: 56
По умолчанию

AtomoS, защита от sql inj легко обходиться в твоем случае, зачем изобретать велосипед, для этого есть соотвествующие функции.
Числовые поля int или intval, текстовые mysql_real_escape_string(), при выводе всех значений на экран обрамлять в htmlspecialchars, вот и все и ненужно, никаких str_replace

Последний раз редактировалось Redwood; 24.04.2010 в 15:13..
 
Ответить с цитированием

  #15756  
Старый 24.04.2010, 15:01
Аватар для Gin
Gin
Участник форума
Регистрация: 11.09.2008
Сообщений: 107
Провел на форуме:
262809

Репутация: 21
По умолчанию

2Deathdreams and 2All
Объявил как global так и не решило задачу. Проглядел все твои месаги так и не нашел класса для верификации мыл. Код я набросал за 15 мин, мог бы сделать и ООП, но для тмоей задачи это из пушки по воробъям, если криво-та еще где-то укажи, сам не люблю гавно код. Проблема все таже не отправляеться пост запрос, не получаю куки.
 
Ответить с цитированием

  #15757  
Старый 24.04.2010, 15:04
Аватар для wildshaman
wildshaman
Постоянный
Регистрация: 16.04.2008
Сообщений: 889
Провел на форуме:
12942062

Репутация: 1550


Отправить сообщение для wildshaman с помощью ICQ
По умолчанию

Цитата:
Сообщение от phpdreamer  
ну а также UnIoN , upDate и т.п.
нольбайт тож пройдет...
Смена регистра не пройдет, в коде strtolower
 
Ответить с цитированием

  #15758  
Старый 24.04.2010, 15:13
Аватар для phpdreamer
phpdreamer
Постоянный
Регистрация: 26.07.2009
Сообщений: 321
Провел на форуме:
444589

Репутация: 123
Отправить сообщение для phpdreamer с помощью ICQ
По умолчанию

Цитата:
Сообщение от wildshaman  
Смена регистра не пройдет, в коде strtolower
упс, не заметил

тогда пройдет uni/**/on
 
Ответить с цитированием

  #15759  
Старый 24.04.2010, 16:28
Аватар для Radical Edward
Radical Edward
Новичок
Регистрация: 24.01.2010
Сообщений: 21
Провел на форуме:
36432

Репутация: 0
По умолчанию

Здравствуйте, наверняка этот вопрос уже задавался, однако, после двух часов поиска, мои успехи ни чуть не изменились.
Заранее скажу, что есть два скрипта : "ВВод" и "Вывод"

Проблемма стара как мир : вставить в MySQL базу кириллические символы.
Суть в том, что я хочу вставить непосредственно со скрипта ВВОДА( написанном на php).

Например, у меня есть "<input type='text'...>", откуда я хочу вытянуть строку и закинуть ее в таблицу.

Кодировка таблицы : utf8_general_ci (пробовал и cp1251)
Кодировка поля в таблице - такая же (Пробовал и cp1251)
mysql_query('SET NAMES cp1251');(или utf8) - поставил сразу после подключения.

если вставлять через PHPMyAdmin - все чудесно вставляется и отображается(как в самом админе, так и в скрипте вывода).

Если вставлять через скрипт ввода, вытягивая строку из текстбокса, то админ отображает нечто такое : "&sup3;&sup3;&sup3;&sup3;", а скрипт вывода : "ûâàûâàûâ".


ЧТО Я ДЕЛАЮ НЕ ТАК, на что обратить внимание и вообще...как справиться с проблеммой.

___
version mysql 5,php 5
__
в му.ini везде кодировка стоит cp1251

Последний раз редактировалось Radical Edward; 24.04.2010 в 16:34..
 
Ответить с цитированием

  #15760  
Старый 24.04.2010, 16:38
Аватар для Failure
Failure
Участник форума
Регистрация: 21.09.2008
Сообщений: 148
Провел на форуме:
678893

Репутация: 102
По умолчанию

PHP код:
<?php
header
("Content-Type: text/html; charset=utf8");
//....коннект к бд
mysql_query("SET NAMES utf8");
?>
<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
<input type=text name="str" value="" ><input type=submit value="В бд">
</form>
<?php
if(!empty($_POST['str']) && !is_array($_POST['str'])) {
  
$result mysql_query("INSERT INTO `table`(str) VALUES('".mysql_real_escape_string($_POST['str'])."')");
  if(
$result == 1) echo "Успешно запостилось";
}
?>
не?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Delphi, .NET, Asm 5420 17.06.2010 13:33
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Форумы 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ