HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #411  
Старый 20.04.2009, 17:42
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


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

PHP код:
<?php
function validateIpAddress($ip_addr) {
   if(
preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/",$ip_addr))  {
       
$parts=explode(".",$ip_addr);
        foreach(
$parts as $ip_parts)  {
          if(
intval($ip_parts)>255 || intval($ip_parts)<0)
               return 
false
        }
    return 
true;
  }
  else
    return 
false
}

// Пример использования:

if (validateIpAddress('1000.2.3.4')) echo 'Валидный IP';
else echo 
'Невалидный IP'
?>
 
Ответить с цитированием

  #412  
Старый 20.04.2009, 18:03
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме:
804931

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

А ip2long кто отменил? False в случае невалидности.
 
Ответить с цитированием

  #413  
Старый 20.04.2009, 22:50
PaCo
Постоянный
Регистрация: 06.02.2008
Сообщений: 494
Провел на форуме:
1754802

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

Цитата:
Сообщение от VDShark  
А ip2long кто отменил? False в случае невалидности.
Не всегда все так просто:
PHP код:
<?
for ($i=0$i<=255$i++)
{
$out="1.1.1.1".chr($i)."numb of char $i<br>";
 if(
ip2long($out)) echo $out;
}
У меня такой вопрос как можно с помошью .htaccess заставить 1-у картинку из множества с одинаковым расширением(.gif,.jpeg, etc) интерпритироваться как php код, то есть в например в дириктории множества картинок с одинаковым расширением и мне нужно как то одну едиственную с вполне конкретным именнем(допустим shell.gif) заставить выполняться как php а все остальные по прежнему имели mime type картинки, реально ли это зделать через .htaccess?
 
Ответить с цитированием

  #414  
Старый 20.04.2009, 23:40
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


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

<Files "shell.gif">
AddType application/x-httpd-php .gif
</Files>
 
Ответить с цитированием

  #415  
Старый 24.04.2009, 17:06
PaCo
Постоянный
Регистрация: 06.02.2008
Сообщений: 494
Провел на форуме:
1754802

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

Доброго времени суток, у меня маленький вопрос, допустим есть такой html:
Код HTML:
<table align="center" width="80%"><tr><td> google.ru </td><td>PR:<b><font color=green> 2 </font></b>тИЦ:<b><font color=red> 10 </font></b></td></tr><tr><td> mail.ru </td><td>PR:<b><font color=green> 7 </font></b>тИЦ:<b><font color=red> 1700 </font></b></td></tr></table>
какой патерн более разумно использовать если мне надо выдрать данные в таком виде:
google.ru PR:2 тИЦ:10
mail.ru PR:7 тИЦ:1700
 
Ответить с цитированием

  #416  
Старый 24.04.2009, 17:23
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

Никакой, если в скрипте нужно просто такие строки выводить

PHP код:
<?
$in 
'<table align="center" width="80%"><tr><td> google.ru </td><td>PR:<b><font color=green> 2 </font></b>тИЦ:<b><font color=red> 10 </font></b></td></tr><tr><td> mail.ru </td><td>PR:<b><font color=green> 7 </font></b>тИЦ:<b><font color=red> 1700 </font></b></td></tr></table>';

$in str_replace('</tr><tr>','<br />',$in);
echo 
strip_tags($in,'<br>');

?>

Последний раз редактировалось Gifts; 24.04.2009 в 19:33..
 
Ответить с цитированием

  #417  
Старый 24.04.2009, 20:20
PaCo
Постоянный
Регистрация: 06.02.2008
Сообщений: 494
Провел на форуме:
1754802

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

Ну примерно так я и делал, но мне это не понравилось вот и хотел как вытянуть регуляркой(че то потерн не выходит), да в html есть и еще таблицы и много другого контента, я например делаю так :

PHP код:
$in =<<<HTML
Здесь html в то числе и таблицы с <tr> <td>
........

а вот эта таблица уникальна(в смысле в коде больше не встречаеться):
<table align="center" width="80%"><tr><td> google.ru </td><td>PR:<b><font color=green> 2 </font></b>тИЦ:<b><font color=red> 10 </font></b></td></tr><tr><td> mail.ru </td><td>PR:<b><font color=green> 7 </font></b>тИЦ:<b><font color=red> 1700 </font></b></td></tr></table> 

...... еще htm


HTML;

preg_match('#<table align="center" width="80\%">(.*)</table>#sU',$in ,$match);
$match=!empty($match[1]) ? array_map('strip_tags',explode('</tr>',rtrim($match[1],'</tr>'))) : null;
print_r($match); 
 
Ответить с цитированием

  #418  
Старый 28.04.2009, 19:58
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Чтото я голову поломал,но тут пооже ключи нужны какието прописывать, а я вот кроме Ui ничего незнаю,точнее как работает,именно.
Вот в чем сама проблема.
Есть
PHP код:
$text 'Hello http://allow.url/preg/match.php Hello allo'
Необходимо получить, ссылку,и только ссылку.
И да,может быть вариант с https, Как это прописываеться в регулярке?
Ествевственнл,сылка может быть разного формата с слешом на конце,так и прочие варианты.
 
Ответить с цитированием

  #419  
Старый 28.04.2009, 20:30
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


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

Думаю универсальной на все случаи жизни в данном случае не придумать, обязательно должно быть какое-то ограничение справа, либо расширение нужное, либо слеш, либо ">" и etc., вот вариант со слешем:

PHP код:
<?php 
$text
='Hello http://allow1.url/preg/match.php/ Hello allo https://allow2.url/preg/match.php/ ла-ла http://allow3.url/preg/match.php/ sss https://allow4.url/preg/match.php/'
preg_match_all("#(http://.*/.*/.*/)|(https://.*/.*/.*/)#Ui"$text$res); 
print_r($res);
?>
а вот вариант с заданным расширением (фактически просто ограничитель справа, слеш есть или нет в конце ссылки - значение не имеет особого, думаю объяснять не надо, http://sait/admin и http://sait/admin/) в итоге дадут одинаковый результат):

PHP код:
<?php 
$text
='Hello http://allow1.url/preg/match.php Hello allo https://allow2.url/preg/match.php ла-ла http://allow3.url/preg/match.php/ sss https://allow4.url/preg/match.php/'
preg_match_all("#(http://.*/.*/.*php)|(https://.*/.*/.*php)#Ui"$text$res); 
print_r($res[0]);
?>
либо парсить ссылки включая "<a href='kfkfkfkfkf'>название_ссылки</a>", что вообще-то более правильно и действительно универсальнее

Т.е. принцип составления ЛЮБОГО регулярного выражения простой - должно быть НАЧАЛО и должен быть КОНЕЦ, как это не странно. Если спошлняковый текст (не имена файлов и т.д., если проводить аналогию с поиском, там ОГРАНИЧЕННЫЙ текст. А тут - сплошняк сплошной.

ЗЫЖ: Вроде бы Если не прав - думаю поправят

Последний раз редактировалось Pashkela; 28.04.2009 в 20:55..
 
Ответить с цитированием

  #420  
Старый 28.04.2009, 22:57
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Цитата:
Сообщение от Pashkela  
Думаю универсальной на все случаи жизни в данном случае не придумать, обязательно должно быть какое-то ограничение справа, либо расширение нужное, либо слеш, либо ">" и etc., вот вариант со слешем:

PHP код:
<?php 
$text
='Hello http://allow1.url/preg/match.php/ Hello allo https://allow2.url/preg/match.php/ ла-ла http://allow3.url/preg/match.php/ sss https://allow4.url/preg/match.php/'
preg_match_all("#(http://.*/.*/.*/)|(https://.*/.*/.*/)#Ui"$text$res); 
print_r($res);
?>
а вот вариант с заданным расширением (фактически просто ограничитель справа, слеш есть или нет в конце ссылки - значение не имеет особого, думаю объяснять не надо, http://sait/admin и http://sait/admin/) в итоге дадут одинаковый результат):

PHP код:
<?php 
$text
='Hello http://allow1.url/preg/match.php Hello allo https://allow2.url/preg/match.php ла-ла http://allow3.url/preg/match.php/ sss https://allow4.url/preg/match.php/'
preg_match_all("#(http://.*/.*/.*php)|(https://.*/.*/.*php)#Ui"$text$res); 
print_r($res[0]);
?>
либо парсить ссылки включая "<a href='kfkfkfkfkf'>название_ссылки</a>", что вообще-то более правильно и действительно универсальнее

Т.е. принцип составления ЛЮБОГО регулярного выражения простой - должно быть НАЧАЛО и должен быть КОНЕЦ, как это не странно. Если спошлняковый текст (не имена файлов и т.д., если проводить аналогию с поиском, там ОГРАНИЧЕННЫЙ текст. А тут - сплошняк сплошной.

ЗЫЖ: Вроде бы Если не прав - думаю поправят
Спасибо,просто статьи про регулярки читал,но так для общего развития,такие регулярки и сам состаить могу конечно,но думал можно чтото типо http||https условий в них вставлять,вот эксперементирую =)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 6762 17.06.2010 21:23



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


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




ANTICHAT.XYZ