PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (4): « 1 2 3 [4]

> Найдено сообщений: 52
kir55rus Отправлено: 04 Февраля, 2012 - 15:32:51 • Тема: Проблема. Ошибка при загрузке Internal Server Error • Форум: Если скрипт не работает

Ответов: 4
Просмотров: 2153
Если напрямую передать get запрос, то страница загружается. пример:
http://adres-scripta[dot]ru/index[dot]ph[dot][dot][dot]rl=cat/post[dot]html

Но если перейти по ссылке http://adres-scripta.ru/cat/post.html, ты вылезает ошибка, которая не дает посмотреть содержимое переменной get:
http://i[dot]imgur[dot]com/A20w5[dot]png
kir55rus Отправлено: 04 Февраля, 2012 - 14:57:34 • Тема: Проблема. Ошибка при загрузке Internal Server Error • Форум: Если скрипт не работает

Ответов: 4
Просмотров: 2153
Здравствуйте, стоит локальный сервер open-server, имеется скрипт, который загружает данные с другого сайта. На локальном сервере всё работает отлично, но как только перекидываю файлы на выделенный, выдает ошибку Internal Server Error

Файл .htaccess
CODE (htmlphp):
скопировать код в буфер обмена
  1. AddDefaultCharset windows-1251
  2. RewriteEngine On
  3. RewriteRule ^(.+)$ index.php?url=$1 [L,QSA,NE]


пример скрипта: (это только макет самого кода, его логика.):
PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($_GET['url']) && $_GET['url'] != '')
  3. {
  4.  
  5.         $data = file_get_contents('http://site.ru/' . $_GET['url']);
  6.        
  7. }
  8. else
  9. {
  10.  
  11.         $data = file_get_contents('http://site.ru/');  
  12.  
  13. }
  14. echo $data;
  15.  


Главную страницу скрипт загружает нормально(т.е. когда нет $_GET['url']), но как только перехожу по ссылке типа http://adres-scripta.ru/cat/posy.html, переменная get['url'] = cat/posy.html
По логике скрипта, он должен загружать страницу по ссылке http://site.ru/cat/posy.html, но он выдает ошибку..
Прочитал, что это связано с файлом .htaccess, но на локальном сервере всё работало, в чем проблема?
kir55rus Отправлено: 03 Февраля, 2012 - 19:46:48 • Тема: создание копии сайта налету • Форум: Вопросы новичков

Ответов: 1
Просмотров: 138
Здравствуйте, хочу написать скрипт, который загружается весь контент сайта(со стилями, картинками и тд) и позже отображает эту страницу в окне браузера. Загружаю страницу через file_get_contents, далее мне необходимо найти относительные ссылки на стили, картинки и скрипты и добавить к ним домен сайта откуда я все это беру, т.е. из относительной ссылки сделать абсолютную, которая ведет на сайт-источник. Это нужно для того, чтобы картинки и стили нормально загружались с другого сайта, тем самым мне не придется сохранять их у себя на сервере. Это была первая задача. Теперь вторая: необходимо ссылки <a href=site.ru. заменить на <a href=mysite.ru , это делается для того, чтобы человек, который нажимает на ссылку остался на моем сайте, а не перешел на чужой. Далее, когда он перейдет по этой ссылке, через файл .htaccess я передам скрипту ссылку, которую необходимо в этот раз загрузить с посторонего сайта. Потом на новой загруженной странице необходимо опять поменять ссылки и так по кругу, пока пользователь не уйдет. Вопрос в следующем, как произвести замену ссылок? Дело в том, что между самим тегом img и атрибутом src может быть разное кол. Символов. Получается, что необходимо использовать функцию preg_replace, но как можно отличить абсолютные и относительные ссылки? В каком порядке нужно производить замену?
Заранее благодарен за помощь. Если уже у кого-нибудь есть данный скрипт - поделитесь, либо назовите цену.

Зы. Почему wap сайты не загружаются через file_get_contents ? На выходе получаю пустую страницу
kir55rus Отправлено: 01 Февраля, 2012 - 18:08:47 • Тема: ассоциативный массив и регулярные выражения • Форум: Вопросы новичков

Ответов: 4
Просмотров: 211
Здравствуйте, можно ли сделать так, чтобы результат поиска с использованием регулярного выражения был записан в ассоциативный массив?

пример исходник для поиска:


требуется на выходе получить массив с полями:
first => 'Hello',
second => 'World',
third => 'Hello'

Есть ли для этого специальная функция? или можно составить регулярное выражение особым образом?
kir55rus Отправлено: 17 Января, 2012 - 13:56:42 • Тема: отказывается работать preg_match_all • Форум: Если скрипт не работает

Ответов: 0
Просмотров: 531
проблема решена, закройте тему
kir55rus Отправлено: 17 Января, 2012 - 08:47:15 • Тема: элементарно-пожалуйста помогите • Форум: Напишите за меня, пожалуйста

Ответов: 3
Просмотров: 44
попробуйте так.
в htaccess:

CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteEngine On
  2. RewriteRule ^([A-Z]{2}[0-9]{9}[A-Z]{2})$ index.php?id=$0 [L,QSA]


В index.php:

PHP:
скопировать код в буфер обмена
  1. if(isset($_GET['id'])) echo $_GET['id'];
kir55rus Отправлено: 17 Января, 2012 - 08:33:27 • Тема: Помогите найти ошибку, либо переписать выражение • Форум: Регулярные выражения

Ответов: 0
Просмотров: 103
Код1:

CODE (html):
скопировать код в буфер обмена
  1. <div id="sale-contact">
  2. <h3 class="sale">Контактная информация:</h3>
  3. <dl class="sale-info contact">
  4. <dt>Контактное лицо:</dt>
  5. <dd class="grey">
  6. <big><strong>АЛЕКСЕЙ</strong></big>
  7. </dd><dt>E-mail:</dt>
  8. <dd>
  9. <big><a class="ligthWindow" id="show-pm-form" href="http://users.auto.ru/feed/4998443.html?subj=Обратная связь ALL.AUTO.RU&body=Вопрос по объявлению о продаже http://cars.auto.ru/cars/used/sale/14946142-94209.html" target="_blank" onmouseover="window.status=(' ');return true;" onmouseout="window.status=('');return true;">Отправить личное сообщение</a></big>
  10. </dd><dt>Город:</dt>
  11. <dd class="grey">
  12. <big><strong>Москва</strong></big>
  13. </dd><dt>Телефон:</dt>
  14. <dd>
  15. <span class="dashed" rel="/?op=sale&act=getPhones&id=14946142-94209&section_id=1&category_id=15" id="get-sale-phones">Показать телефон</span>
  16. </dd>
  17. </dl>
  18. </div>


Код2:

CODE (html):
скопировать код в буфер обмена
  1. <div id="sale-contact">
  2.                 <h3 class="sale">Контактная информация:</h3>
  3.                 <dl class="sale-info contact">
  4.                    
  5.                     <dt>Продавец:</dt>
  6.                     <dd class="grey">
  7.                         <big><strong><a href="/clients/6085.html">MSK1438</a></strong></big>
  8.                     </dd>
  9.                    
  10.                     <dt>Контактное лицо:</dt>
  11.                     <dd>
  12.                         <big><strong>Комиссионный магазин АвтоДворик</strong></big>
  13.                     </dd>
  14.                    
  15.                     <dt>E-mail:</dt>
  16.                     <dd class="grey">
  17.                         <big><a class="ligthWindow" id="show-pm-form" href="http://users.auto.ru/feed/4026850.html?subj=Обратная связь ALL.AUTO.RU&body=Вопрос по объявлению о продаже http://cars.auto.ru/cars/used/sale/15593359-489d33.html" target="_blank" onmouseover="window.status=(' ');return true;" onmouseout="window.status=('');return true;">Отправить личное сообщение</a></big>
  18.                     </dd>
  19.                    
  20.                     <dt>Город:</dt>
  21.                     <dd>
  22.                         <big><strong>Москва</strong></big>
  23.                     </dd>
  24.                    
  25.                     <dt>Телефон:</dt>
  26.                     <dd class="grey">
  27.                         <ul class="sale-phones"><li><strong>+7 (910) 495-9996</strong> <span> с 10:00 до 21:00</span></li><li><strong>+7 (925) 542-0204</strong> <span> с 10:00 до 21:00</span></li><li><strong>+7 (495) 542-0204</strong> <span> с 10:00 до 21:00</span></li></ul>
  28.                     </dd>
  29.                    
  30.                 </dl>
  31.             </div>



Необходимо написать регулярное выражение, которое будет подходить под оба исходника и искать Имя (из контактного лица), ссылку на номер телефона (или сам телефон, если доступен)

если использовать регулярные выражений отдельно друг от друга, то всё работает:

Имя: |Контактное лицо:\</dt\>\r\n\<dd class=.grey.\>\r\n\<big\>\<strong\>(.+)\</strong\>|iU
Ссылка на телефон: |\<span class=.dashed. rel=./(.+). id=.get-sale-phones.\>Показать телефон\</span\>|iU
Сам телефон: |Телефон:\</dt\>\r\n\<dd\>\r\n\<ul class=.sale-phones.\>(\<li\>.+\</li\>)\</ul\>|iU

Но как только пытаюсь их добавить в конструкцию: #(ИМЯ){1}((СКРЫТЫЙ ТЕЛЕФОН)|(ОТКРЫТЫЙ ТЕЛЕФОН)){1}#iU всё перестает работать, где я допустил ошибку?

мой код:
CODE (htmlphp):
скопировать код в буфер обмена
  1. #(Контактное лицо:\</dt\>\r\n\<dd class=.grey.\>\r\n\<big\>\<strong\>(.+)\</strong\>){1}((\<span class=.dashed. rel=./(.+). id=.get-sale-phones.\>Показать телефон\</span\>)|(Телефон:\</dt\>\r\n\<dd\>\r\n\<ul class=.sale-phones.\>(\<li\>.+\</li\>)\</ul\>)){1}#iU


Буду благодарен, если поможете найти ошибку


Проблему решил, вот рег. выражение:

CODE (htmlphp):
скопировать код в буфер обмена
  1. #(Контактное лицо:</dt>.*\r\n.*<dd.*>.*\r\n.*<big><strong>(.+)</strong></big>)((.*\r\n.*)*)((<span class=.dashed. rel=./(.+). id=.get-sale-phones.>Показать телефон</span>)|(<dt>Телефон:</dt>.*\r\n.*<dd.*>.*\r\n.*<ul class=.sale-phones.>((<li><strong>.+</strong>.*<span>.+</span></li>)+)</ul>)){1}#iU


Закройте тему

Страниц (4): « 1 2 3 [4]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB