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

Форум MySQL

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

 

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

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

тема: защита

Сообщения:  [1-6] 

 
 автор: RV   (20.08.2006 в 06:25)   письмо автору
 
   для: Panker   (19.08.2006 в 22:51)
 


<?
is_numeric
($_GET[cms_id]) ? $id $_GET[cms_id] : $id  0  ;  
$ath mysql_query("select * from pages where cms_id = '$id'";  
?>

этот весь код помещается в одну строку

<?
$ath 
mysql_query("select * from pages where cms_id = " . (int) $_GET['id']);  
?>

   
 
 автор: Panker   (19.08.2006 в 22:51)   письмо автору
 
   для: cyberface   (19.08.2006 в 21:58)
 


Я фигею...блин, поставь себе TranslateIT... 
Перевожу ошибку: 
Обнаружена ошибика: неожиданный ';' в y:\home\newcms\www\index.php на строке 16

Выводы делай сам..

прости конечно, я не в обиду и не в оскарбление, прсото хочу сказать что бы Вы фигели про себя, зарание спасибо!

а на счёт

<? 
is_numeric
($_GET[cms_id]) ? $id $_GET[cms_id] : $id  0  
$ath mysql_query("select * from pages where cms_id = '$id'"
?>



я сделал по другому!
защита от всего помойму на данном этапе!
рег выражения
от хтмл от фраз
кочрео вот код

<?php    
Error_Reporting
(E_ALL & ~E_NOTICE);   


require_once(
"include/mysql.php");   

$pages $_GET['cms_id'];
$pages htmlspecialchars($pages);
$pages trim($pages);
$pages=stripslashes($pages);
$pages=str_replace"&#032;"     ,' '           ,$pages);
$pages=str_replace"&"          ,'&amp;'       ,$pages);
$pages=str_replace"<!--"       ,'&#60;&#33;--',$pages);
$pages=str_replace"-->"        ,'--&#62;'     ,$pages);
$pages=preg_replace"/<script/i",'&#60;script' ,$pages);
$pages=str_replace">"          ,'&gt;'        ,$pages);
$pages=str_replace"<"          ,'&lt;'        ,$pages);
$pages=str_replace"\""         ,'&quot;'      ,$pages);
$pages=preg_replace"/\n\n/"    ,'<p>'         ,$pages);
$pages=preg_replace"/\n/"      ,'<br>'        ,$pages);
$pages=preg_replace"/\\\$/"    ,'&#036;'      ,$pages);
$pages=preg_replace"/\r/"      ,''            ,$pages);
$pages=preg_replace"/\\\/",'&#092;',           $pages);
$pages=str_replace("\r\n","<br>",                 $pages);
$pages=str_replace("\n\n",'<p>',                 $pages);
$pages=str_replace("\n",'<br>',                     $pages);
$pages=str_replace("\t",' ',                     $pages);
$pages=str_replace("\r",' ',                     $pages);
$pages=str_replace('  ',' ',                     $pages);
$pages=str_replace("0173",' ',                     $pages);
$pages=str_replace("%AD",' ',                     $pages);
$pages=str_replace("&#173;",' ',                 $pages);
$pages=str_replace("­""",                      $pages);


require_once(
"templars/business/index.php");   



function 
pef($pages)
{    
if(!
preg_match("/[0-9]/i"$pages)) 

{ echo 
"ERROR ID"; }

else
{
$pagesth mysql_query("select * from pages where cms_id = $pages");     
if(
$pagesth)     
{     
  while(
$pagesuthor mysql_fetch_array($pagesth))     
  {     
    echo 
"".$pagesuthor['cms_text']."";     
  }     
}     
else     
{     
  echo 
"<p><b>Error: ".mysql_error()."</b><p>";     
  exit();     
}
}
return;
}
?>  

   
 
 автор: cyberface   (19.08.2006 в 21:58)   письмо автору
 
   для: RV   (19.08.2006 в 19:44)
 

Я бы сделал по другому, ты вот так приводишь тип к целочисленному, а если там хакер попробывал ввести какую-либо строку, то она привратится в число. Конечно, полученный id врядли будет существовать. Я бы сделал так.


<?
is_numeric
($_GET[cms_id]) ? $id $_GET[cms_id] : $id  0  ;
$ath mysql_query("select * from pages where cms_id = '$id'";
?>

   
 
 автор: Panker   (19.08.2006 в 19:54)   письмо автору
 
   для: RV   (19.08.2006 в 19:44)
 

оштбка Parse error: parse error, unexpected ';' in y:\home\newcms\www\index.php on line 16

   
 
 автор: RV   (19.08.2006 в 19:44)   письмо автору
 
   для: Panker   (19.08.2006 в 19:35)
 


<?
$ath 
mysql_query("select * from pages where cms_id = " . (int) $_GET[cms_id] . ")";      
?>

   
 
 автор: Panker   (19.08.2006 в 19:35)   письмо автору
 
 

помогите!
мне многие говорят что какието дырки есть вот в таком запросе

function pef($pages)    
{    

$ath = mysql_query("select * from pages where cms_id = $_GET[cms_id]");     
if($ath)     
{     


  while($author = mysql_fetch_array($ath))     
  {     
    echo "".$author['cms_text']."";     
  }     
}     
else     
{     
  echo "<p><b>Error: ".mysql_error()."</b><p>";     
  exit();     
}     
return;    



да и в общем какие защитные действитвия по мускулу нуны?

   

Сообщения:  [1-6] 

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

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