Показать сообщение отдельно

  #23  
Старый 14.11.2009, 16:40
Mixon
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
С нами: 9560218

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

Пример на твоих соксах....

PHP код:
<?
include "include/winbinder.php";
define("ID_START",    100);


$mainwin wb_create_window(null,AppWindow,'Тест зависания...',WBC_CENTERWBC_CENTER600600,0x000000000);



wb_create_control($mainwinPushButton"СТАРТ!",       2020560520,    ID_START);



wb_set_handler($mainwin"process_main");
wb_main_loop();

function 
process_main($window,$id) {
 switch(
$id) {
  case 
ID_START:
$a sql("http://www.model.poltava.ua");
alert($a);
  break;
  case 
IDCLOSE:
   
wb_destroy_window($window);
  break;
 }
}

 function 
sql($url) {
  
$patern "/^(http:\/\/)?([^\/]+)/i";
  
$source_host preg_match($patern$url$rezz);
  
$host $rezz[2];
  
$url1 "GET $url\n"// Тут GET можно поменять на POST, к примеру
  
$responce "";
  
$timeout 30// На Ваше усмотрение
  
$fsock    fsockopen($host80$errnum,$errstr,$timeout);
  if (
$fsock) {
         
$headers  $url1;
         
$headers .= "Host: $host\n";
         
$headers .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.0.2) Gecko/20060308 Firefox/1.5.0.2\n";
         
$headers .= "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\n";
         
$headers .= "Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3\n";
         
$headers .= "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\n";
         
$headers .= "Keep-Alive: 500\n";
         
$headers .= "Connection: close\n";
         
$headers .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n";
         
fwrite   ($fsock,$headers);
         
stream_set_blocking($fsock0);
         
stream_set_timeout($fsock$timeout);
         while    (!
feof($fsock)) $responce .= fread($fsock,4096);
         
fclose   ($fsock);
  }
  return 
$responce;
}

function 
alert($textalert){
wb_message_box($window$textalert"Alert"WBC_INFO);
}

?>
Сайт выбрал который долго грузиться,сам посмотри...Пока сокс не выполниться,тоисть весь скрипт,ты ничего не можешь сделать...так же само если и место
$a = sql("http://www.model.poltava.ua");
вставить sleep(20);
он зависнет,или любую долгую операцию...
 
Ответить с цитированием