HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 01.09.2009, 19:40
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
С нами: 10269701

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

Цитата:
Сообщение от FireFenix  
echo $main->config['bd']['login'];
ты сути не понял...
смотри мы создаем функцию у нас создается локаьлная область видимости переменных, что бы видны были глобальные переменные мы делаем вот так...
PHP код:
function main() {
global 
$var;
....
код...

я хочу нечто такое же для класса. чтобы в классе подгружались некие "глобальные" переменные
 
Ответить с цитированием

  #2  
Старый 01.09.2009, 19:57
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами: 8915117

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

никак.... создай базовый класс и в нём всё храни... либо класс контейнер
 
Ответить с цитированием

  #3  
Старый 01.09.2009, 20:01
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
С нами: 10269701

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

Цитата:
Сообщение от FireFenix  
никак.... создай базовый класс и в нём всё храни... либо класс контейнер
что подразумется под класс-контейнер?
тупо все перменные залить туда?
 
Ответить с цитированием

  #4  
Старый 01.09.2009, 20:02
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами: 8915117

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

Цитата:
Сообщение от RedBull@12  
что подразумется под класс-контейнер?
тупо все перменные залить туда?
тада

ну не все.....а к которым кросс доступ нужен
 
Ответить с цитированием

  #5  
Старый 01.09.2009, 20:10
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
С нами: 10269701

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

Цитата:
Сообщение от FireFenix  
тада
ну не все.....а к которым кросс доступ нужен
не это как-то не по-гиковски...я предлагаю как вариант...пропарсить инклудный файл, конструктором автостарта регуярками....сейачс напишу....посмотрим что получится=)
 
Ответить с цитированием

  #6  
Старый 01.09.2009, 20:25
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами: 8915117

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

Цитата:
Сообщение от RedBull@12  
не это как-то не по-гиковски...я предлагаю как вариант...пропарсить инклудный файл, конструктором автостарта регуярками....сейачс напишу....посмотрим что получится=)
Это индусский код - передавать глоабльные переменные через подключаемый файл...... для каждого нового класса
 
Ответить с цитированием

ЭВРИКА!
  #7  
Старый 01.09.2009, 21:58
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
С нами: 10269701

Репутация: 58
По умолчанию ЭВРИКА!

Ура!
2FireFenix,элементарно все оказалось!
PHP код:
<?php
class base {    
 public 
$vars;   
 function 
__construct() {      
  require_once(
"vars.php");      
  
$this->vars $__VARS;      
  
print_r($this->vars);    
 }  
}  
$base = new base;
?>

Последний раз редактировалось RedBull@12; 01.09.2009 в 22:01..
 
Ответить с цитированием

  #8  
Старый 02.09.2009, 02:31
zavra
Участник форума
Регистрация: 12.03.2008
Сообщений: 159
С нами: 9559919

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

PHP код:
<?

$method
="POST";
$addr="/login.php"//адрес относительно корня сервера, 
$target="127.0.0.1"//ip адрес сервера, или прокси сервера, через который оправить запрос
$targetport=80//порт сервера или прокси

$postvars="op=a_login_attempt&email=zzz@mail.ru&pass=zzzzzz&expire=0";
$len=strlen($postvars);

$in=
"$method $addr HTTP/1.1\r\n".
"Host: vkontakte.ru\r\n".
"User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2\r\n".
"Accept: */*\r\n".
"Accept-Language: ru,en-us;q=0.7,en;q=0.3\r\n".
"Accept-Encoding: gzip,deflate\r\n".
"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n".
"Keep-Alive: 300\r\n".
"Connection: keep-alive\r\n".
"Content-Length: $len\r\n\r\n".
$postvars;

echo 
$in;

$socket socket_create (AF_INETSOCK_STREAM0);
$result socket_connect ($socket$target$targetport);
socket_write($socket$instrlen($in));
$o="";
while (
$out socket_read ($socket2048)) {
   
$o.=$out;
}
echo 
$o;
?>
Однако при тесте показывает 404 страница хостера вместо ответа от сервера =( можно как-то проще сделать, а не через сокет?

Последний раз редактировалось zavra; 02.09.2009 в 02:34..
 
Ответить с цитированием

  #9  
Старый 02.09.2009, 02:50
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
С нами: 10269701

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

Цитата:
Сообщение от zavra  
PHP код:
<?

$method
="POST";
$addr="/login.php"//адрес относительно корня сервера, 
$target="127.0.0.1"//ip адрес сервера, или прокси сервера, через который оправить запрос
$targetport=80//порт сервера или прокси

$postvars="op=a_login_attempt&email=zzz@mail.ru&pass=zzzzzz&expire=0";
$len=strlen($postvars);

$in=
"$method $addr HTTP/1.1\r\n".
"Host: vkontakte.ru\r\n".
"User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2\r\n".
"Accept: */*\r\n".
"Accept-Language: ru,en-us;q=0.7,en;q=0.3\r\n".
"Accept-Encoding: gzip,deflate\r\n".
"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n".
"Keep-Alive: 300\r\n".
"Connection: keep-alive\r\n".
"Content-Length: $len\r\n\r\n".
$postvars;

echo 
$in;

$socket socket_create (AF_INETSOCK_STREAM0);
$result socket_connect ($socket$target$targetport);
socket_write($socket$instrlen($in));
$o="";
while (
$out socket_read ($socket2048)) {
   
$o.=$out;
}
echo 
$o;
?>
Однако при тесте показывает 404 страница хостера вместо ответа от сервера =( можно как-то проще сделать, а не через сокет?
так у вас адрес локальный, а хост в запросе порписан vkontakte.ru...
можно через cURL
PHP код:
$c curl_init();      
curl_setopt($cCURLOPT_URL"http://vkontakte.ru/");    
curl_setopt($cCURLOPT_REFERER"http://vkontakte.ru/");      
curl_setopt($cCURLOPT_USERAGENT"9.60 beta под Windows XP — Opera/9.60 (Windows NT 5.1; U; en) Presto/2.1.1");      
curl_setopt($cCURLOPT_HEADER1);      
curl_setopt($cCURLOPT_RETURNTRANSFER1);      
$body curl_exec($c);
curl_close($c);
//это обычный гет 
PHP код:
$c curl_init();  
curl_setopt($cCURLOPT_URL"http://vkontakte.ru");
curl_setopt($cCURLOPT_REFERER"http://vkontakte.ru");
curl_setopt($cCURLOPT_USERAGENT"9.60 beta под Windows XP — Opera/9.60 (Windows NT 5.1; U; en) Presto/2.1.1");
curl_setopt($cCURLOPT_HEADER1);
curl_setopt($cCURLOPT_POST1);
curl_setopt($cCURLOPT_POSTFIELDS$post);
curl_setopt($cCURLOPT_RETURNTRANSFER1);
curl_setopt($cCURLOPT_COOKIE$cookies);
$body curl_exec($c);
curl_close($c);
//это пост 
http://www.php.su/functions/?cat=curl здесь подробно описао какие ключи что значат. икак пользоваться...
PHP код:
preg_match_all('|Set-Cookie: (.*);|U'$body$results);
$cookies implode(';'$results[1]); 
регулярка для выдерания куков из пришедших хедеров

Последний раз редактировалось RedBull@12; 02.09.2009 в 03:01..
 
Ответить с цитированием

  #10  
Старый 02.09.2009, 03:20
zavra
Участник форума
Регистрация: 12.03.2008
Сообщений: 159
С нами: 9559919

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

прописал в хост http://vkontakte.ru, выдает 400 Bad Request
через curl для меня еще сложнее( но такой вариант тоже попробую, спс. с сокетами хочется до конца разобраться
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



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


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




ANTICHAT ™ © 2001- Antichat Kft.