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

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

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

  #1  
Старый 25.08.2009, 19:00
AngelOfFaith
Новичок
Регистрация: 02.02.2009
Сообщений: 19
Провел на форуме:
278694

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

Цитата:
Сообщение от L I G A  
что то типа этого:
PHP код:
if (preg_match("#(.+).(.+).ru #i"$_SERVER['HTTP_HOST'])) { 
    
header("Location: http://sait.ru/script.php?id=user"); 
} else { 
    
header("Location: http://sait.ru");

И куда мне поставить этот скрипт? Мне надо что то типа автоматического создания поддомена, думаю это надо реализовать через htaccess, вот тока без доступа к конфигам такое не получается, а если есть доступ то надо при каждом добавлении такого поддомена перегружать апач
 
Ответить с цитированием

  #2  
Старый 26.08.2009, 15:47
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Мб кто поможет с регулярками в принципе раньше все норм было, сейчас вот вошёл в ступор, есть регулярка приблизительно такого вида :
Код:
r'''\<li class\=g\>\<h3 class\=r\>\<a href\=\"(.*?)\" class\=\l\>(.*?)\<\/a\>\<\/h3\>'''
Знающие люди мну поймут

Она собирает кортежи, состоящие из двух текстов
Мне нужно, чтобы жрались все данные, кроме тех в которых встречается определенное слово (оно встречается в первой части (.*?)) т.е что-то типа (.*?[^\w someword]) как я понимаю, подскажите как это реализовать
P.S. Язык - Python
P.P.S. Если точно, то это даже не слово, а часть слова
Короч, нужно отобрать все ссылки, кроме тех ссылок, в которых встречается определенное слово, т.е. из
http://vasya.com
http://vasya1.com
http://vasya2.com
http://vasya3.com
http://vasya_name.com
http://vasya_name2.com
http://vasya_name3.com
Нужно выбрать все ссылки, в которых НЕ встречается _name
Эту очистку в принцип то можно сделать и средствами самого Python, но хочется переделать регулярку...

Последний раз редактировалось login999; 26.08.2009 в 16:03..
 
Ответить с цитированием

  #3  
Старый 26.08.2009, 16:08
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


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

У тебя в регулярке слишком много всего екранировано помоему.
Цитата:
r'''<li class=g><h3 class=r><a href=\"(.*?)\" class=l>(.*?)<\/a><\/h3>'''
 
Ответить с цитированием

  #4  
Старый 26.08.2009, 16:11
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от b3  
У тебя в регулярке слишком много всего екранировано помоему.
Да экранирование там в принципе не главное, просто регулярка хватает лишнее, выдирает как сами ссылки, так и целые блоки хтмл кода, они в принципе под нее подпадают...
Там по принципу "Лучше перебдеть чем недобдеть"

Последний раз редактировалось login999; 26.08.2009 в 16:13..
 
Ответить с цитированием

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

Репутация: 3338


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

Конкретно для этого случая вот так примерно (на пыхе):

PHP код:
<pre>
<?php
$s 
'
   href="http://vasya.com "class
   href="http://vasya1.com "class
   href="http://vasya2.com "class
   href="http://vasya3.com "class
   href="http://vasya_name.com "class
   href="http://vasya_name1.com "class
   href="http://vasya_name2.com "class'
;

preg_match_all('#href="(http://vasya[^_].*) "class#Uis',$s,$z);
print_r($z);
?>
</pre>
целое слово-исключение как в регулярку поставить - хз

Т.е. скорее всего никак, только если вторая регулярка по уже полученному массиву из первой или в цикле (опять же потом) прогонять полученные результаты на предмет совпадения ненужного слова в строке в целом

Последний раз редактировалось Pashkela; 26.08.2009 в 16:45..
 
Ответить с цитированием

  #6  
Старый 27.08.2009, 17:02
gumplen2006
Новичок
Регистрация: 27.08.2009
Сообщений: 2
Провел на форуме:
26795

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

Здравствуйте. Хочу сделать следующую вещь: есть сайт, у которого много субдоменов, которые хранятся в папке subdomains/имя_субдомена. Я сделал следующий файл .htaccess:
Код:
RewriteCond %{HTTP_HOST} ^(.*)\.site\.com\.ua$
RewriteRule (.*)$ subdomaine/%1/$1
где %1 - должно быть имя субдомена, а $1 - имя открываемого файла.
Что-то не пашет так. Работает только, когда прописываю так:
Код:
RewriteCond %{HTTP_HOST} ^(.*)\.site\.com\.ua$
RewriteRule (.*)$ http://site.com.ua/subdomaine/%1/$1
Но в таком случае пользователь видит адрес http://site.com.ua/subdomaine/имя_субдомена/имя_файла
а я добиваюсь такого:
http://имя_субдомена.site.com.ua/имя_файла
В общем, помогите, кто чем может.
 
Ответить с цитированием

  #7  
Старый 27.08.2009, 16:27
Byrger
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме:
791766

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

Есть модРеврайт

PHP код:
RewriteRule ^([a-zA-Z0-9]+)/  index.php?action=$1
RewriteRule 
^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/  index.php?action=$1&act=$
Но когда я сделал такой код перестались открываться файлы допустим css/style.css img/image.gif

Как исправить?
 
Ответить с цитированием

  #8  
Старый 27.08.2009, 17:07
gumplen2006
Новичок
Регистрация: 27.08.2009
Сообщений: 2
Провел на форуме:
26795

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

Цитата:
Сообщение от Byrger  
Есть модРеврайт

PHP код:
RewriteRule ^([a-zA-Z0-9]+)/  index.php?action=$1
RewriteRule 
^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/  index.php?action=$1&act=$
Но когда я сделал такой код перестались открываться файлы допустим css/style.css img/image.gif

Как исправить?
Я вообще не спец, но, кажется, ты забыл добавить в регулярное выражение точку
 
Ответить с цитированием

  #9  
Старый 27.08.2009, 17:25
Byrger
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме:
791766

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

Цитата:
Сообщение от gumplen2006  
Я вообще не спец, но, кажется, ты забыл добавить в регулярное выражение точку
Это ничего не меняет...
 
Ответить с цитированием

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

Репутация: 1304


По умолчанию

Byrger
PHP код:
RewriteEngine On
RewriteCond 
%{REQUEST_FILENAME} !-
RewriteRule 
^([a-zA-Z0-9]+)/  index.php?action=$1
RewriteRule 
^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/  index.php?action=$1&act=$
gumplen2006 Так просто тут не получится, придется выкручиваться:
PHP код:
RewriteEngine On

RewriteCond   
%{HTTP_HOST}            ^(www\.)?[^.]+\.site\.ru$
RewriteCond   %{REQUEST_URI}        !/subdomaine
RewriteRule   
^(.+)$                %{HTTP_HOST}$1          [C]
RewriteRule   ^(www\.)?([^.]+)\.site\.ru/?(.*) /subdomaine/$2/$[L
AngelOfFaith Аналогично с предыдущим для вашего случая, только вместо subdomaine нужно будет писать путь до скрипта

FireFenix Побуквенное отрицание не прокатит, если перед ним стоит .* какой нить, и даже без него - привяжется со второй буквы отрицание

login999 Без условных подмасок перла - сложно, но возможно
PHP код:
'''
   href="http://vasya.com "class
   href="http://vasya1.com "class
   href="http://vasya2.com "class
   href="http://vasya3.com "class
   href="http://vasya_name.com "class
   href="http://vasya_name1.com "class
   href="http://vasya_surname1.com "class
   href="http://vasya_familiya123123123.com "class
   href="http://vasya_name2.com "class'''

print 'Пример с 3 словами're.findall(r'''(http://(?!.*(?:surname|familiya|name2))(?(1)|.*)\.com)''',a)
print 
'Пример с 2 словами're.findall(r'''(http://(?!.*(?:surname|name2))(?(1)|.*)\.com)''',a
__________________
Любая действущая программа устарела.
Создайте систему, которой сможет пользоваться даже дурак ,и только дурак захочет ею пользоваться.
Как правильно задавать вопросы: _http://www.yakimchuk.ru/questions.htm

Последний раз редактировалось Gifts; 27.08.2009 в 20:13..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 6762 17.06.2010 21:23
Всё о беспороводном соединении на кпк и смартфонах! Задай вопрос - получи ответ! ARMENIN Беспроводные технологии/Wi-Fi/Wardriving 2 02.11.2008 00:40



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


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




ANTICHAT.XYZ