информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Портрет посетителяСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Объясните пожалуйста эти моменты: 21.10.03 12:29  Число просмотров: 1428
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Помогите переписать кусочек кода на perl в php
$sysstring = "curl + url"; 
open(foo,"$sysstring); # в php нет такой функции...
while(<foo>){                  # на скобки тоже ругается...  
# Пока поступают данные, проверяем на наличие в них слова "hidden" 
   while( /hidden name=(.*?)>/gs ) {
        if(index($1, "ERROR") == 0) {
              $errstring = $1;
              $errstring =~ ( /value="(.*)"/ );
              print "Error on preview is: $1\n";
       }
} 

---
Я новичек в php, помогите если не трудно, а там я дальше по аналогии...
<programming>
как сдружить php и curl? 17.10.03 13:49  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
На перле я делал так (win32):
<prel>
$curlargs = "param1";
$curlargs .= "¶m2";
$curlargs .= "¶m3";
$curlargs .= "¶m4";
$sysstring = "curl -s -d";
$sysstring .= '"';
$sysstring .= $curlargs;
$sysstring .= '"';
$sysstring .= "https://securetyxxx.com" ;
open(foo,"$sysstring);
while(<foo>){
# если встретятся поля с хидденами
while( /hidden name=(.*?)>/gs ) {..обработка..}
}

---
А на php такое разве не проходит? ругается на "while( /hidden name=(.*?)>/gs )" что я сделал не так?
И еще вопрос. Я так понимаю, что у *nix хостера данный скрипт работать не будет? А как мне на php реализовать работу с curl?
как сдружить php и curl? 23.10.03 13:04  
Автор: trent Статус: Незарегистрированный пользователь
<"чистая" ссылка>
http://ru2.php.net/manual/en/ref.curl.php

> На перле я делал так (win32):
> <prel>
> $curlargs = "param1";
> $curlargs .= "¶m2";
> $curlargs .= "¶m3";
> $curlargs .= "¶m4";
> $sysstring = "curl -s -d";
> $sysstring .= '"';
> $sysstring .= $curlargs;
> $sysstring .= '"';
> $sysstring .= "https://securetyxxx.com" ;
> open(foo,"$sysstring);
> while(<foo>){
> # если встретятся поля с хидденами
> while( /hidden name=(.*?)>/gs ) {..обработка..}
> }
>
---

> А на php такое разве не проходит? ругается на "while(
> /hidden name=(.*?)>/gs )" что я сделал не так?
> И еще вопрос. Я так понимаю, что у *nix хостера данный
> скрипт работать не будет? А как мне на php реализовать
> работу с curl?

http://ru2.php.net/manual/en/ref.curl.php
как сдружить php и curl? 27.10.03 09:52  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> http://ru2.php.net/manual/en/ref.curl.php
Пробую таким образом:
$user_agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_PROXY, "localhost:8080"); 
curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent); 
curl_setopt ($ch, CURLOPT_HEADER, 1); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST,  2);
curl_setopt ($ch, CURLOPT_TIMEOUT, 120);
curl_setopt ($ch, CURLOPT_URL, 'https://www.xxxx.xx/xxx/login.php');

ob_start();
curl_exec ($ch);
ob_end_flush();

if (curl_error($ch))
        printf("Error %s: %s", curl_errno($ch), curl_error($ch));

curl_close ($ch);
exit;

---

Выдает ошибку curl_error($ch) Error 60: SSL certificate problem, verify that the CA cert is OK
Есть у меня этот файл сертификатов curl-ca-bundle.crt Но куда его пихать? Пробовал и в winnt/system и winnt/system32 и в каталог с php, и пр. Может что посоветуете?
как сдружить php и curl? 27.10.03 12:59  
Автор: trent Статус: Незарегистрированный пользователь
<"чистая" ссылка>
curl_setopt($ch, CURLOPT_CAFILE, 'C:\pathto\ca-bundle.crt');

---

внимательнее читаем 'User Contributed Notes'
Спасибо! 27.10.03 14:01  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
>
> curl_setopt($ch, CURLOPT_CAFILE,
> 'C:\pathto\ca-bundle.crt');
> 

---

Спасибо, я понял. Только все-равно ошибка 60...
Я совсем запутался, php поставил с http://www.php.net/get/php-4.3.3-Win32.zip, там же есть ведь поддержка curl?. В php.ini раскомментировал все extentions, все работает, но curl через https не хочет ходить. Нашел в инете какой-то сертификат ".crt", подключил как Вы сказали, не получается... Что я не так сделал?
на счет поддержки curl - ты уверен? 27.10.03 23:22  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> http://www.php.net/get/php-4.3.3-Win32.zip, там же есть
> ведь поддержка curl?.
возможно, но это далеко на факт.

> В php.ini раскомментировал все
> extentions, все работает, но curl через https не хочет
> ходить. Нашел в инете какой-то сертификат ".crt", подключил
> как Вы сказали, не получается... Что я не так сделал?
Уверен 28.10.03 08:35  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> > http://www.php.net/get/php-4.3.3-Win32.zip, там же
> есть
> > ведь поддержка curl?.
> возможно, но это далеко на факт.
>
Но в /extentions есть php_curl.dll и php_openssl.dll и cURL ходит через http, но через https ходить отказывается. Err:60
Конечно, можно забить на это... 28.10.03 08:41  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
и сделать так:
  $curlargs  = "var1=1";
  $curlargs .= "&var2=23";
  $curlargs .= "&Pass=secret";
  $sysstring = "curl -s -d";
  $sysstring .= '"';
  $sysstring .= $curlargs;
  $sysstring .= '"';
  $sysstring .= https://xxx/lohin.php;
  $fd = popen($sysstring, "r");
  while ($buffer = fgets($fd, 4096)) {
   echo $buffer;
  }
  pclose($fd);

---
Это пре-екрасно работает у меня на win32.
Но я собираюсь покупать хостинг на *nix -ах.
ЭТО будет там работать? Если да то тема закрыта:)
как сдружить php и curl? 17.10.03 14:39  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> На перле я делал так (win32):
> <prel>
> $curlargs = "param1";
> $curlargs .= "¶m2";
> $curlargs .= "¶m3";
> $curlargs .= "¶m4";
> $sysstring = "curl -s -d";
> $sysstring .= '"';
> $sysstring .= $curlargs;
> $sysstring .= '"';
> $sysstring .= "https://securetyxxx.com" ;
> open(foo,"$sysstring);
> while(<foo>){
> # если встретятся поля с хидденами
> while( /hidden name=(.*?)>/gs ) {..обработка..}
смотри в сторону функции preg_match
синтаксис перла и пхп не идентичен.
> }
>
---

> А на php такое разве не проходит? ругается на "while(
> /hidden name=(.*?)>/gs )" что я сделал не так?
> И еще вопрос. Я так понимаю, что у *nix хостера данный
> скрипт работать не будет? А как мне на php реализовать
> работу с curl?
http://curl.sourceforge.net/
нужно пересобрать пхп для работы с curl. безусловно, сама библиотека так же должна быть установлена на сервере.
Объясните пожалуйста эти моменты: 21.10.03 12:29  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Помогите переписать кусочек кода на perl в php
$sysstring = "curl + url"; 
open(foo,"$sysstring); # в php нет такой функции...
while(<foo>){                  # на скобки тоже ругается...  
# Пока поступают данные, проверяем на наличие в них слова "hidden" 
   while( /hidden name=(.*?)>/gs ) {
        if(index($1, "ERROR") == 0) {
              $errstring = $1;
              $errstring =~ ( /value="(.*)"/ );
              print "Error on preview is: $1\n";
       }
} 

---
Я новичек в php, помогите если не трудно, а там я дальше по аналогии...
Объясните пожалуйста эти моменты: 21.10.03 13:20  
Автор: Hux0r Статус: Незарегистрированный пользователь
<"чистая" ссылка>
По поводу цикла я попробовал так:
  $fd = popen($sysstring, "r");
  while ($buffer = fgets($fd, 4096)) {
  echo $buffer; # Получаю первые 4 кг. страницы (мне больше и не надо)
}

---
Вроде работает. Но может быть как-то по-другому это реализуется?

А дальше, как пользоваться preg_match() для поиска?
Мне же нужно найти не только "hidden", а главное какая строка стоит после него - или это "ERROR" или "что-то".
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach