Делать разбор XML регулярками в языке, в котором уже полно средств для удобного разбора XML - это странно. Я бы порекомендовал SimpleXML.
Подскажите регулярку которая найдёт соответствие: </tag>.+?--> но с одной оговоркой. чтобы между текстом </tag> и --> не было между ними <!-- То есть регулярка которая поймает совпадение <\tag>some ... text --> но не отреагирует на текст: <\tag>some .. <!-- .. text --> буду благодарен
помогите пожалуйста сделать проверку переменной что бы в ней были только русские буквы большие и маленькие а так же пробелы между словами, если условие не подходит выдавать ошибку моя регулярка почему то наоборот работает, все буквы и символы пропускает, а кириллицу запрещает PHP: if (!preg_match("/[^А-ЯЁ\s]+/ui", $_POST['name'])){exit('<p style="text-align:center">разрешена только кириллица</p>');}
Слышал, что вроде в патернах проблемы с кодировками... А не проще ли сделать наооборот: PHP: if (preg_match("#[A-Z\s]+$#i", $_POST['name'])){exit('<p style="text-align:center">разрешена только кириллица</p>');}
я вот не слышал.. обычно проблемы с кодировками у тех, кто не умеет с ними работать Ваша регулярка не сработает как надо. Проще убрать оператор отрицания из кода донди и всё Ну можно \s на пробел заменить, ибо пробельных символов помимо пробела хватает
как сделать что бы htaccess для заблокированых ip отдавал http код 429 ? например deny from 94.139.239.0/32 отдаётся 403
Непонятная ситуация с регуляркой, она выдирает куки из ответа сервера, но только первую куку . Непонятно с ней проблеммы или со снифером ( в других случаях работает идеально.) Code: +xhr.responseText.match(/_COOKIE.*?<td class=\"v\">(.*?)<\/td><\/tr>/m)[1] Строка с куками имеет такой вид HTTP_COOKIE => __cfduid=d7a5bc6e25f6073221781dbb1d591bd8b1460834789; cf_clearance=b743425f1830b8a97ea106810887d155501c350d-1460834814-604800; ci_session=18d0d22f7e274345354db267ac2ffa7f7bbc76655; login=yXRWPuMMQ2sdfbr34QSgc%252F0KM985nSZ6cDNwuaFfA%253D%253D; password=315675184535gf5711da84e068fa78; chat_token=P38SgjlpTok4egefKIxWuAxK4OHBkWBLnlrDe%2BxMNQ%3D; user_id=78001175; real_user_id=78001175; social_id=296400; __auc=333d425a154208ab39c1e7529ec; OAGEO=NL%7C%7C%7C%7C%7C%7C%7C%7C%7C%7C; OAID=d4f0c5982d37d47a46de6bf377999630; _ym_uid=1460834849654078056; __utma=4986037.946172708.1460834854.1460834854.1460834854.1; __utmc=4986037; __utmz=4986037.1460834854.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); _ym_isad=2; __unam=7639673-154208d00ac-329207ba-4; remember_user_token=ebvretB1sGaQPQhQRJIiIker345AkeHY4Y3NYSHpjM0FGL1J0QmV1NkRhZQY6BkVU--efb1e1e4ecd97dcff7f0acd95f06fd2435267067; _session_id=ca5d0e429dbretbrt5443985b93842b7; _ga=GA1.2.946172708.1460834854
как регуляркой убрать лишнее, оставить один домен, т.е. есть http://elkuch-ag.com/no_cache/en/home.html надо elkuch-ag.com
я бы сделал так. (хотя нет, я бы не юзал регулярку для такой простой цели) Code: $url= 'http://elkuch-ag.com/no_cache/en/home.html'; $reg = '#http://(www\.)?(.*?)/#is'; preg_match($reg, $url, $result); print_r($result[2]); // elkuch-ag.com
if(preg_match("|[f]+|im", 'ssss'."\r\n".'fddd')) { echo 'detect'; } Почему в данном коде вхождение считается успешным? И выводится detect. Не пойму логику, модификатор s отсутствует, а следовательно, всё что после \r\n учитываться регуляркой не должно, но по факту происходит. Подскажите, почему?
Неверное суждение. Поиск идёт по всему тексту в любом случае. Модификатор "s" здесь вообще ни при чём, он разве что на точку влияет (указывает, эквивалентна ли она символам перевода строки). Точно так же, нет необходимости в модификаторе "m" - в данном случае метасимволы начала и конца строки не используются, следовательно - модификатор ни на что не влияет. Рекомендую статью "Модификаторы шаблонов"
Подскажите пожалуйста, если в папке на хостинге находится поддомен, то можно ли в него подгрузить файлы находящиеся в корневой директории через htaccess ? необходимо подтянуть общие ресурсы - страницу 404
htaccess может редиректить запрос, подгрузить можно разве что так Code: php_value auto_prepend_file "file.php"
только перед этим обязательно добавлять Code: php_value include_path ".:/path/to/file_location" ну либо указывать абсолютный путь до файла иначе всё сломается при обращении в подкаталоги
Доброго времени суток! Надеюсь что я попал в нужную тему. У меня есть один вопрос и его суть я опишу чуть ниже: Есть сайт в корне которого лежит файл .htaccess В нём установлены следующие правила Code: AddDefaultCharset WINDOWS-1251 RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f ###RewriteRule ^[a-zA-Z]+.php?id=(.*) payment.php?id=$1 [QSA,L] RewriteRule ^[a-zA-Z0-9]+(.php)? index.php [QSA,L] Когда я обращаюсь к главной странице, то срабатывают правила в .htaccess файле. Но вот в чём незадача - главная страница, при обращении к ней, обращается к стороннему сервису и как оказалось, она это делать целых 2 раза, хотя заход на неё происходит один раз! Если же я убираю файл .htaccess из корня, то всё работает корректно - сторонний сервис фиксирует только одно обращение к нему! Пожалуйста, подскажите с чем это может быть связано и как это можно исправить?
возможно сторонний сервис, после обращения к нему, отправляет отлуп(запрос) на ваш сайт обратно, без htaccess запрос уходит в 404, с htaccess запрос заворачивается в index.php посмотреть логи apache ваше сайта с отключенным htaccess, может там 404/403/50х от запросов стороннего сервиса
Посмотрел логи и нигде не увидел 40x 50x ошибок! Пример Code: bankserv.local: 127.0.0.1 [28/Mar/2018:21:12:14 +0300] "GET /form.php/?redirect=2&ban=2&ip=127.0.0.1&domain=bank2.local&user_agent=Mozilla%2F5.0+%28Windows+NT+6.1%3B+Win64%3B+x64%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F65.0.3325.181+Safari%2F537.36&fxs= HTTP/1.0" 200 - "-" "-" bankserv.local: 127.0.0.1 [28/Mar/2018:21:12:14 +0300] "GET /form.php/?sum= HTTP/1.0" 200 - "-" "-" bankserv.local: 127.0.0.1 [28/Mar/2018:21:12:14 +0300] "GET /form.php/?card=get&fxs=&fxp=127.0.0.1&user_agent=Mozilla%2F5.0+%28Windows+NT+6.1%3B+Win64%3B+x64%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F65.0.3325.181+Safari%2F537.36&domain=bank2.local HTTP/1.0" 200 14 "-" "-" bank2.local: 127.0.0.1 [28/Mar/2018:21:12:14 +0300] "GET / HTTP/1.1" 200 19 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36" Оба сайта: основной и "сервис" мне подконтрольны и находятся на одном локальном сервере на базе OpenServer После того как я попробовал убрать файл htaccess и закинул его обратно, всё стало ещё хуже - теперь всё работает как нужно, но теперь я не знаю когда эта проблема может вылезти снова и с чем она была связана. Возможно в данный момент пропал смысл разбирать описанную мною задачу, так как она "магическим" способом сама себя разрешила ... Но если у вас есть ещё какие либо предположения, пожалуйста озвучьте их, так как возможно я ещё встречусь с подобной задачкой. В любом случае, спасибо за ответ.
обычно магическим способом перестаёт что то работать мало данных, вообще я не теоретик чтобы что то советовать strace/xdebug - помогут прояснить возникновение проблемы, а так же логи системы/apache/etc