PHP.SU

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

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

> Найдено сообщений: 84
Vampire Отправлено: 03 Октября, 2014 - 14:59:19 • Тема: object value omitted • Форум: Вопросы новичков

Ответов: 1
Просмотров: 1137
Написал простой парсер, а он не парсит имя, выдает null:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. header("Content-type:text/html;charset=utf-8");
  3. $index_url = 'http://www.mywed.ru';
  4. $doc = new DOMDocument();
  5. $doc2 = new DOMDocument();
  6.  
  7. $urls = array();
  8. $to_write = array();
  9.  
  10. for($i=0;$i<11;$i++){
  11.     $url = "http://www.mywed.ru/photographer/page/{$i}/";
  12.  
  13.     $doc->loadHTMLFile($url);
  14.    
  15.     $xpath = new DOMXpath($doc);
  16.     $url = $xpath->query("//*[@class='photographer-row-cnt']/span[1]/a/@href");
  17.     foreach ($url as $element){
  18.             $doc2->loadHTMLFile($index_url.$element->nodeValue);
  19.      
  20.            
  21.             $xpath2 = new DOMXpath($doc2);
  22.            
  23.             $name = $xpath2->query("//*[@itemprop='name']");
  24.  
  25.             print_r($name->nodeValue)."<br>";
  26.             var_dump($name->nodeValue);
  27.        
  28.     }
  29. }
  30.  

В результатах url все нормально, все ссылки получаются правильными, я их выводил отдельно. Так же пробовал парсить на прямую и все ок. в чем может быть проблема?

выдает DOMXPath Object ( [document] => (object value omitted) )
(Добавление)
но я нашел проблему, забыл еще один цикл добавить
PHP:
скопировать код в буфер обмена
  1.             $name = $xpath2->query("//*[@class='user-name']/span");
  2.             foreach($name as $el){
  3.                 echo $el->nodeValue."<br>";
  4.  
  5.             }

можно тут как-то без foreach обойтись?
(Добавление)
ну так можно как-то без foreach обойтись?
Vampire Отправлено: 08 Июля, 2014 - 10:29:45 • Тема: Замена домена в url • Форум: Вопросы новичков

Ответов: 1
Просмотров: 150
Есть url http://site[dot]domain[dot]ru/fileve[dot]avi в нем нужно заменить только site.domain.ru, как это регуляркой сделать, подскажите пожалуйста
Vampire Отправлено: 27 Июня, 2014 - 20:47:05 • Тема: Кодировка. Новые и старые записи в базе в разной кодировке • Форум: Вопросы новичков

Ответов: 0
Просмотров: 42
После переноса сайта с одного хоста на другой некоторые записи выводятся кракозябрами. это только из одной таблицы, все остальное ок. Кодировка таблицы в базе utf8_general_ci, а кодировка столбца
cp1251_bin, пробовал менять - не помогло. кодировка базы utf8_general_ci.
декодировать то не проблема, с помощью iconv из utf-8 в cp1251. но проблема с кодировкой только у старых записей, а у новых все ок. т.е я декодирую с помощью iconv старые записи, но тогда проблемы появляются с новыми(новые записи после конвертации в таком формате:��������). Кто что подскажет?
(Добавление)
Решил просто пройтись циклом и обновить все значения.

PHP:
скопировать код в буфер обмена
  1.  
  2. while($s = mysql_fetch_array($q)){
  3.  
  4.         $new = iconv('UTF-8', 'CP1251', $s['order_address']);
  5.         mysql_query('UPDATE orders set order_address='.$new);
  6. }
  7.  
  8.  
  9.  

Но в базу записывает вместо строки - число. с чем может быть связано?
Vampire Отправлено: 06 Февраля, 2014 - 23:00:31 • Тема: MVC, проблемы с роутером • Форум: Объектно-ориентированное программирование

Ответов: 10
Просмотров: 2130
esterio пишет:
Еще раз Вы каждый раз бросаете исключение


PHP:
скопировать код в буфер обмена
  1.     if(!include($_SERVER['DOCUMENT_ROOT'].'/app/controllers/'.$class.'.php')){
  2.        throw new Exception("Unable to load $class.");
  3.     }


сделал так - заработало, спасибо
Vampire Отправлено: 06 Февраля, 2014 - 22:52:53 • Тема: MVC, проблемы с роутером • Форум: Объектно-ориентированное программирование

Ответов: 10
Просмотров: 2130
caballero пишет:
сделайте по человечески - от DOCUMENT_ROOT


PHP:
скопировать код в буфер обмена
  1.  function __autoload ($class) {
  2.     include($_SERVER['DOCUMENT_ROOT'].'/app/controllers/'.$class.'.php');
  3.     throw new Exception("Unable to load $class.");
  4. }  
  5.  


не помогло
Vampire Отправлено: 06 Февраля, 2014 - 22:35:33 • Тема: MVC, проблемы с роутером • Форум: Объектно-ориентированное программирование

Ответов: 10
Просмотров: 2130
KingStar пишет:
а название файла с контроллером???
(Добавление)
и почему пути относительные???


с файлом все впорядке, indexController.php

относительные пути мою проблему не решают
Vampire Отправлено: 06 Февраля, 2014 - 22:01:08 • Тема: MVC, проблемы с роутером • Форум: Объектно-ориентированное программирование

Ответов: 10
Просмотров: 2130
Router:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. class Router{
  4.    
  5.     public $route = array();
  6.     public $params = array();
  7.    
  8.     public function _init(){
  9.         $routes = explode('/', $_SERVER['REQUEST_URI']);
  10.         $this->route['controller']=isset($routes[1]) ? $routes[1].'Controller' : 'indexController';
  11.         $this->route['action']=isset($routes[2]) ? $routes[2] : 'index';
  12.         $c=$this->route['controller'];
  13.        
  14.         $controller= new $c;
  15.        
  16.         if(method_exists($controller, $this->route['action'])){
  17.             $action=$this->route['action'];
  18.             $controller->$action();
  19.            
  20.         }
  21.         else{
  22.            
  23.             return 'Unknown action';
  24.            
  25.         }
  26.  
  27.     }
  28.  
  29. }
  30.  



index.php:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. ini_set('display_errors', 1);
  4. include('/app/route/router.php');
  5.  function __autoload ($class) {
  6.     include('/app/controllers/'.$class.'.php');
  7.     throw new Exception("Unable to load $class.");
  8. }  
  9.  
  10. try{
  11.     $route=new Router;
  12.     $route->_init();
  13.    
  14. } catch (Exception $ex){
  15.    
  16.     echo $ex->getMessage(), "\n";
  17. }
  18.  
  19.  
  20.  
  21.  
  22.  


При переходе на site/index получаю Unable to load indexController.
Вроде все ок, кстати сам класс инклудит т.к ошибок php нет.

ну и контроллер на всякий случай:

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. class indexController{
  4.     public function test(){
  5.         echo "123";
  6.     }
  7. }
  8.  
Vampire Отправлено: 04 Января, 2014 - 20:15:27 • Тема: Динамческое обновление блока CodeIgniter • Форум: CMS и фреймворки

Ответов: 2
Просмотров: 999
Ап Радость
Vampire Отправлено: 04 Января, 2014 - 11:03:27 • Тема: Динамческое обновление блока CodeIgniter • Форум: CMS и фреймворки

Ответов: 2
Просмотров: 999
Есть модель и в ней метод:
PHP:
скопировать код в буфер обмена
  1. public function online(){
  2.                 $online_list=array();
  3.                 $query=$this->db->query('SELECT id,name, online FROM users_meta where online="1"');
  4.  
  5.                 foreach ($query->result() as $key) {
  6.                         array_push($online_list, $key->name);
  7.                        
  8.                 }
  9.                                
  10.                 return $online_list;
  11.                        
  12.                
  13.         }


Потом есть контроллер:
PHP:
скопировать код в буфер обмена
  1. <?PHP index(){
  2. $this->load->model('logic_chat');
  3.                         $online_list=array('online_list'=>$this->logic_chat->online());
  4.                         $this->load->view('chat', $online_list);
  5. }


И отображение:
PHP:
скопировать код в буфер обмена
  1. <?PHP foreach ($online_list as $key):?>
  2. <div id="users">
  3. <div class="user"><?=$key?></div>
  4. </div>
  5. <?endforeach;?>
  6.  


Не могу придумать как реализовать динамическое добавление пользователей в блок users через ajax, помогите, пожалуйста.
Vampire Отправлено: 08 Августа, 2013 - 09:21:47 • Тема: MVC модели, как реализовать • Форум: Объектно-ориентированное программирование

Ответов: 4
Просмотров: 1021
Цитата:
а где там модели?

их там нет, я сижу и думаю как их реализовать, где их подключать и создавать объект.
Цитата:
лепить свой велосипед имхо не стоит, хотя дело ваше

все для практики.
Vampire Отправлено: 08 Августа, 2013 - 08:57:37 • Тема: MVC модели, как реализовать • Форум: Объектно-ориентированное программирование

Ответов: 4
Просмотров: 1021
https://github[dot]com/IVAAAAN/mvc
вот сделал нечто подобное mvc. как лучше всего реализовать здесь модели? и что поправить можно?
Vampire Отправлено: 07 Августа, 2013 - 19:50:26 • Тема: MVC контроллер • Форум: Объектно-ориентированное программирование

Ответов: 1
Просмотров: 1278
Мой роутер:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. class Route{
  3.         public function run(){
  4.                 $uri = explode('/', $_SERVER['REQUEST_URI']);
  5.                 $controller = isset($uri[1]) ? strtolower($uri[1]).'Controller' : 'indexController';
  6.                 $action = isset($uri[2]) ? strtolower($uri[2]).'Action' : 'indexAction';
  7.                 if(file_exists('app/controllers/'.$controller.'.php')){
  8.                 if(class_exists($controller)){
  9.                         $controller = new $controller;
  10.                         if(method_exists($controller, $action)){
  11.                                 $controller->$action();
  12.                         }
  13.                
  14.                 }
  15.                
  16.         }
  17.         else{
  18.         $host = 'http://'.$_SERVER['HTTP_HOST'].'/';
  19.         header('HTTP/1.1 404 Not Found');
  20.         header("Status: 404 Not Found");
  21.         header('Location:'.$host.'404');
  22.         }
  23.        
  24.         }
  25. }

index.php :
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include('app/core/route.php');
  3. $route = new Route;
  4. $route->run();
  5. function __autoload($className){
  6.         include('app/controllers/'.$className.".php");
  7. }


контроллер:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. class 404Controller{
  3.         public function indexAction(){
  4.                 echo "404";
  5.         }
  6. }


выдает "обнаружена циклическая переадресация", почему, не пойму?

все на месте...
Vampire Отправлено: 02 Августа, 2013 - 19:10:37 • Тема: Исключения PDO • Форум: Вопросы новичков

Ответов: 6
Просмотров: 385
[b]Мелкий[/b, щит, спасибо, не заметил Улыбка

Но проблему не решает
(Добавление)
PHP:
скопировать код в буфер обмена
  1.  $DBH = new PDO(sprintf('mysql:host=%s;dbname=%s', $host, $dbname), $user, $pass);
  2.  


даже так не работает
PDO::__construct(): in C:\OpenServer\domains\oop\index.php on line 8
Error!: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed
Vampire Отправлено: 02 Августа, 2013 - 18:59:53 • Тема: Исключения PDO • Форум: Вопросы новичков

Ответов: 6
Просмотров: 385
Цитата:
Warning: PDO::__construct(): in C:\OpenServer\domains\oop\index.php on line 8
Error!: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed


теперь вот так вот)
Vampire Отправлено: 02 Августа, 2013 - 18:00:16 • Тема: Исключения PDO • Форум: Вопросы новичков

Ответов: 6
Просмотров: 385
Почему так пишет то?
Цитата:
пишет же
__construct() expects at least 1 parameter

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB