crautcher
User-
Posts
95 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Store
Everything posted by crautcher
-
действительно урезаный не ругается :/ всё понял , на практике выходило что перед созданием обьекта юзался метод , который тоже юзает метод "methode1" . Поставил создание объекта 1ым действием и всё норм
-
такто это не пхп , набери в гугле "jquery modal window"
-
точно , долбаная черточка из за невнимательности недовала мне покоя) теперь у меня проблема в другом месте ... буду писать сокращеный вариант только то что учавствует в проблеме класс 1 class someclass1 { private $variable; function __construct() { $conf = self::GetConf(); $this -> variable = array(); foreach ($conf as $c) $this -> variable[ $c ] = false; } public static function GetConf() { static $conf = false; if (!$conf) $conf = include "conf/someconf.php"; return $conf; } public function GetSome() { return $this -> variable; } } класс 2 использует объект этого класса class someclass2 { public $somevar; function __construct() { $this -> somevar = new someclass1; $this -> methode1(); } function methode1() { ... $somevar2 = $this -> somevar -> GetSome(); ... } } PHP Fatal error: Call to a member function GetSome() on a non-object
-
рабочий вариант $iconf = blabla::GetConf(); var_dump($iconf); die(); class blabla { public static function GetConf() { static $conf = false; if (!$conf) $conf = include "conf/conf.blabla.php"; return $conf; } } не рабочии варианты , почему? $iconf = blabla::GetConf(); class blabla { function _construct() { global $iconf; var_dump($iconf); $conf = self::GetConf(); var_dump($conf); $conf2 = include "conf/conf.blabla.php"; var_dump($conf2); die(); } public static function GetConf() { static $conf = false; if (!$conf) $conf = include "conf/conf.blabla.php"; return $conf; } } везде null , почему?
-
хочу ускорить рассылку , а то она уже 3 с хером часа проходит . Идея такая файл запуска : подготавлевает данные вынимает всех юзеров из базы в цикле запускает демона с параметрами кому что слать для отправки каждому юзера файл демон - непосредственно шлет и логирует себя отправка одному юзеру занимает 1,2с , за это время скрипт запустит около 5 демонов , что на теории значит что будут 5 одновременных потоков , на практике скорее всего больше . а вопрос , наколько опасна такая практика?
-
онлик событие вешай ваша форма .action = ...; ваша форма.submit();
-
<div id="fbModal" title=""> <div class="ui-widget-ourcontent"> <?= na ('wallpost request') ?> </div> <div class="ui-widget-footer"> <input type="button" value="<?= na ('close') ?>" id="closemodal" class="ui-widget-yes-button"> <input type="button" value="<?= na ('yes') ?>" id="acceptmodal" class="ui-widget-yes-button"> </div> </div> <script type="text/javascript"> var popupWindow = { instances : [], init : function (selector, noClose) { if (this.instances[selector]) { return true; } $(selector).dialog({ modal: true, autoOpen: false, draggable: false, resizable: false, width: 350, position: ['center', 0], closeOnEscape: (noClose) ? false : true, open : function() { if (noClose) { $('.ui-dialog-titlebar-close').hide(); } else { $('.ui-dialog-titlebar-close').show(); } } }); this.instances[selector] = true; }, open : function (selector) { this.init(selector); $(selector).dialog('open'); }, close : function (selector) { $(selector).dialog('close'); } } popupWindow.init('#fbModal', true); $('#fbModal').dialog('option', { width: 500 }); popupWindow.open('#fbModal'); $('#closemodal').click(function() { popupWindow.close('#fbModal'); }); $('#acceptmodal').click(function() { popupWindow.close('#fbModal'); }); </script> открывается как модальное , а при клике не закрывается - пишет "Uncaught TypeError: Object [object Object] has no method 'dialog'" на строке close : function (selector) { $(selector).dialog('close');
-
Может срабатывает блокировка браузера? на 3х браузерах проверил , может както подругому надо писать например opener.location.reload(true);
-
почему не работает так ? просто ничего не происходит <script type='text/javascript'> parent.reload (); self.close(); </script>
-
'name' => $child['name'] . '<p style="blalala"> (' . $product_total . ')</p>',
-
<?php header('Content-Type: text/html, charset=windows-1251'); if (isset($_GET['name']) || !empty($_GET['name'])) { $name = urlencode($_GET['name']); echo $name; файл сохранен тоже в 1251 , почему он показывает ютфную кодировку?
-
слово "Смотритель" закодированое через urlencode в 2х разных кодировках выглядет так: %D1%EC%EE%F2%F0%E8%F2%E5%EB%FC %D0%A1%D0%BC%D0%BE%D1%82%D1%80%D0%B8%D1%82%D0%B5%D0%BB%D1%8C может кто сказать какие используются ?
-
ставлю новый дизайн http://psychopathy.fd0.ru/ свояйте мне див из которого эта куча счетчиков и кнопок не убегала бы , а былаб в левом меню как все , намучился я с ними
-
1ый файл готовит линки , 2ой направляет по ним . суть простая если не залогинен отправляем на логин , если залогинен , то логинем на сайте и отправляем на сайт . Проблема в том что время от времени редирект зацикливается , и начинает кидать сам на себя по кругу . Главное понять немогу из за чего и справоцировать тоже не удаёться , прям мистика . <? function ExecDefault(){ header('P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'); $Fb = facebook::getAuthorized() ; $facebook = new facebook; if ( $Fb['profile']) { $this -> SetAppLg ($Fb['profile']['locale']); $sql = Sql::getInstance('horo'); $Fb ['profile'] ['Token'] = $facebook ->getAccessToken() ; $this -> AutoregFbUser ( $Fb ['profile']); $this -> AutoLogin ($Fb ['profile'] ); $this -> setVar ('logoutLink', $facebook->getLogoutUrl ()); if ( $_SERVER['SERVER_PORT'] == '443' ) $this -> setVar ('redirect','https://'. facebook::getConfig( "domain" ) .'/'); else $this -> setVar ('redirect','http://'. facebook::getConfig( "domain" ) .'/'); } else { if ( $_SERVER['SERVER_PORT'] == '443' ) $this -> setVar ( 'loginLink' , $facebook-> getLoginUrl ( array ( 'canvas' => 1, 'scope' => 'email,offline_access,publish_stream,user_birthday', 'redirect_uri' => 'https://'.facebook::getConfig( "domain" ).'/?m=fblogin', )) ); else $this -> setVar ( 'loginLink' , $facebook-> getLoginUrl ( array ( 'canvas' => 1, 'scope' => 'email,offline_access,publish_stream,user_birthday', 'redirect_uri' => 'http://'.facebook::getConfig( "domain" ).'/?m=fblogin', ))); } $this -> output ( "fbapp" ); } ?> <? header('P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'); if (isset ($loginLink) ) { ?> <script type="text/javascript"> top.location.href='<?echo $loginLink?>' </script> <?} if (isset($logoutLink)){?> <script type='text/javascript'> top.location = '<?echo $redirect?>' </script> <?}?>
-
есть кроновская рассылка на стену фейсбука юзерам . Отправка одному юзеру занимает секунду , что значит что за час я смогу отправить 3600 юзерам . А число юзеров скоро перевалит за этот лимит . Задача стоит написать демон на шеле , который будет исполнять по 10 юзеров через сценарий . тогда запустив 10 демонов мы увеличиваем скорость отправки . Как реализовать чтоб вызвав сценарий мы постили 1-10 юзерам , если еще раз то 10-20 юзерам и т.д.
-
яб сделал сохранение информации в полях , если есть пост тога валуэ будет им
-
нет , только 1 метод и всё . как всегда ложаюсь на мелочах , фигурную скобки не верно закрыл , выходит метод внутри другого, извеняюсь за потраченое время
-
это не экшн а просто фейбук , в нём функционал работи на стороне фейсбука , а этот на стороне моего серва
-
для кого я писал комент "//tut" ? всё работало без метода , значит наследование верное файл 1: <?php class ActionFacebook extends BasicAction { public $loginInfo=''; function add($id) { $date = date('Y-m-d'); $sql = Sql::getInstance('horo'); $sql -> run ("UPDATE `FacebookStat` SET `count` = count + 1 WHERE `id` = '" . addslashes($id) . "' AND `date` = '" . $date ."'"); if ($sql -> get_affected_rows() == 0) { $sql -> run ("INSERT INTO `FacebookStat` (`id`, `date`, `count`) VALUES ('" . addslashes($id) . "', '" . $date . "', '1')"); } } function GetBirthDate($profile){ if (empty($profile['birthday']) || is_null($profile['birthday'])) return false; $tmp = explode("/", $profile['birthday']); $birthdate =array('day' =>$tmp[1],'month' =>$tmp[0],'year' =>$tmp[2]); return $birthdate; } function AutoregFbUser ($user_info){ $sql = Sql::getInstance('horo'); $sql -> query (" SELECT * from Login where Email = '". $user_info['email'] ."' ", $rows); if ( $rows == 0 ){ $this -> RegisterUser ($user_info); $sql -> run ("update Login SET IsEmail = 1 where Email = '". $user_info['email'] ."' "); $bd = $this->GetBirthDate($user_info['profile']); $LoginInfo = $this->GetLoginInfo($user_info['email']); if (!empty($LoginInfo[0]['LoginID']) && ($LoginInfo[0]['LoginID']) && ($bd)) $sql->run("insert into HoroUserInfo (LoginID , BirthDate , TimeZone , UpdateDate) values('". $LoginInfo[0]['LoginID'] ."' , '". $bd['year'] ."-". $bd['month'] ."-". $bd['day'] ." 00:00:00' , 'Europe/Vilnius' , '". date('Y') ."-". date('m') ."-". date('d') ." ". date('H') .":". date('i') .":". date('s') ."' ) "); elseif (!empty($LoginInfo[0]['LoginID']) && ($LoginInfo[0]['LoginID']) ) $sql->run("insert into HoroUserInfo (LoginID , BirthDate , TimeZone , UpdateDate) values('". $LoginInfo[0]['LoginID'] ."' , '". date('Y') ."-". date('m')."-". date('d') ." 00:00:00' , 'Europe/Vilnius' , '". date('Y') ."-". date('m') ."-". date('d') ." ". date('H') .":". date('i') .":". date('s') ."' ) "); } $sql -> query (" SELECT * from FacebookJointing where fbEmail = '".addslashes( $user_info['email'] ) ."' ", $rows); if ( $rows == 0 ) $this->add('5'); } function RegisterUser ($user_info) { global $sid , $cfg, $sql; $post = array ('horoscope' => '', 'redirect' => '', 'Login' => $user_info['id'], 'Password' => $user_info['id'] , 'Email' => $user_info["email"] ); $errors = array(); $args = array(); $basic = Basic::make ($post, $cfg ["main"] ["id"], 0); if ($basic) { $basic -> disableSendMail(true); print($basic -> insert() ); if ($basic -> insert() ) { if (isset ($_COOKIE ['jRef'])) { $joinStat = new JoinStatistic($sql); $joinStat -> insert($basic -> LoginID, substr ($sid, -3), $_COOKIE ['jRef']); setcookie ('jRef', '', time() - 3600 * 24, '/'); } $action = new Action(); $action -> log_joins ($basic -> LoginID, substr ($sid, -3), $basic -> aLogin["PartnerID"]); } } } function GetLoginInfo($email){ if (!empty($this->loginInfo)) return $this->loginInfo; $sql = Sql::getInstance ('horo'); $loginInfo = $sql -> getListFromQuery ("SELECT * FROM Login where Email ='". $email ."' limit 1"); return $loginInfo; } function AutoLogin ($fbUserInfo) { global $session,$sid; $sql = Sql::getInstance ('horo'); $LoginInfo = $this->GetLoginInfo($fbUserInfo['email']); if (! FacebookApp::getUserByKey('LoginID', $LoginInfo[0]['LoginID'] )) { $data = array ('LoginID' => $LoginInfo[0]['LoginID'] , 'fbID' => $fbUserInfo['id'], 'fbEmail' => $fbUserInfo['email'] , 'mailingList' => '1'); FacebookApp::accountJointing($data); } FacebookApp::setAccessToken($fbUserInfo['id'], $fbUserInfo['Token']); $sql->run("update FacebookJointing set mailingList= 1 WHERE LoginID = '".addslashes( $LoginInfo[0]['LoginID'] ) ."' "); $sql->run("UPDATE Login SET IsNews = 1 where LoginID='".addslashes ( $LoginInfo[0]['LoginID'] ) ."'"); $LoginInfo = $sql -> getListFromQuery ("SELECT * FROM Auth where LoginID ='". $LoginInfo[0]['LoginID'] ."' limit 1"); if ( isset ($LoginInfo [0] ['Login']) && isset ($LoginInfo [0] ['Password']) ){ $auth = new Auth ($LoginInfo[0]['Login'] , "", $LoginInfo[0]['Password'] , null); if ($auth -> access) { $sid = $session -> create ($auth -> LoginID, $LoginInfo[0]['Login'] , $auth -> CanServices); $action = new Action (); $action -> log_logins ($auth -> LoginID, substr ($sid, -3), $auth -> PartnerID, $auth -> isUniqueDayLogin , $auth -> isUniqueMonthLogin); return $sid; } else return false; } function SetAppLg($local){ global $lg; $ulg = FacebookApp :: getLgByLocale($local); die($ulg); if ($ulg == 'ru' || $ulg='lt') $lg = $ulg ; else $lg = 'lt' ; } } а файл 2 состоит пока ток из того метода
-
header ('Content-type: text/html; charset=utf-8'); и set names utf-8 невижу