Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Zend Framework, контроллеры и методы 
V
    Опции темы
RomanR
Дата 8.3.2008, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 8.3.2008

Репутация: нет
Всего: нет



Доброго времени суток.

   В прикрепленном файле пример работы с Zend framework.
   Вопрос: Почему не получается передвигатся по ссылкам меню? Почему отображает только связку: IndexController  и indexAction(по умолчанию)?К примеру, такие ссылки 
     http:// [ path ]/index/info
     http:// [ path ]/index/contact
 ничего не отобразят!
     
   Структура:  

FirstPHPProject
---controllers
------ErrorController.php
------IndexController.php
------UsersController.php
---models
------users.php
---views
------scripts
----------error
----------index
----------------contact.phtml
----------------index.phtml
----------------info.phtml
----------users
----------------add.phtml
----------------delete.phtml
----------------edit.phtml
----------------index.phtml
----------------view.phtml
----------footer.phtml
----------header.phtml
----------menu.phtml

library
--Zend

public
--styles
----layout.css
--index.php


Код файла index.php:
Код

<?php
try {
    // full error reporting
    error_reporting(E_ALL);
    
    //includes
    include_once('Zend/Loader.php');
    
    //load the classes
    Zend_Loader::loadClass('Zend_Controller_Front'); //translates into 'include(Zend/Controller/Front.php)'
    Zend_Loader::loadClass('Zend_Db');
    Zend_Loader::loadClass('Zend_Db_Table');
    
    //configure the database
    $options = array(
        'host' => 'localhost' ,
        'username' => 'postgres' , 
        'password' => 'lotusnotes' ,
        'dbname' => 'firstphpdb'
    );
    $db = Zend_Db::factory( 'PDO_PGSQL' , $options );
    //Using Zend_Db_Table is not mandatory, but it will help write models because it assists in 'fast-writing' sql-queries
    //If we omit Zend_Db_Table we should use the PDO model
    Zend_Db_Table::setDefaultAdapter( $db );
    
    //configure the front controller
    $controller = Zend_Controller_Front::getInstance();
    $controller->setControllerDirectory( './FirstPHPProject/controllers');
    
    //disable automatic view rendering
    $controller->setParam('noViewRenderer' , true);  
    
    //run the controller
    $controller->dispatch();
} catch (Exception $e) {
        echo $e->getMessage() . ' in ' . $e->getFile() . ' on line ' . $e->getLine() . "\n";
}




Это сообщение отредактировал(а) RomanR - 8.3.2008, 17:12

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  www.zip 16,59 Kb
PM MAIL   Вверх
Fortop
Дата 8.3.2008, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Пропиши для своего path в аппаче

Код

<Directory "path">
    AllowOverride All
</Directory>



--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
RomanR
Дата 8.3.2008, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 8.3.2008

Репутация: нет
Всего: нет



Я прописал в httpd.conf так:

<Directory "D:/job/">
        AllowOverride All        
    </Directory>

,где "D:/job/"-петь к сайту.

При тестировании не работал даже IndexController по умолчанию. 
Может я чтото не так и не там  прописал?
PM MAIL   Вверх
Fortop
Дата 8.3.2008, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



У тебя D:/job/ является корневым каталогом для документов Аппача?

Вот тебе пример с путями. Весь твой сайт был развернут в папку /htdocs/ (в твоем архиве проект лежит в каталоге "www")
Поэтому путь получился "D:/Apache2/htdocs/www"

Код

<Directory "D:/Apache2/htdocs/www">
    AllowOverride All
</Directory>




--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
RomanR
Дата 8.3.2008, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 8.3.2008

Репутация: нет
Всего: нет



Путь к Apache - C:/Program Files/Apache Group/Apache/htdocs/
Путь к проекту - D:/www/

Как должно быть прописано в < Directory > ?
PM MAIL   Вверх
Fortop
Дата 8.3.2008, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



опубликуй свой проект в C:/Program Files/Apache Group/Apache/htdocs/ (у тебя Eclipse PDT? или Zend Studio Neon?)

например просто скопируй его сюда C:/Program Files/Apache Group/Apache/htdocs/www/

Затем собственно 

Код

<Directory "C:/Program Files/Apache Group/Apache/htdocs/www">
    AllowOverride All
</Directory>




--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
RomanR
Дата 8.3.2008, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 8.3.2008

Репутация: нет
Всего: нет



Опубликовать в C:/Program Files/Apache Group/Apache/htdocs/www/ 
не получается. Пишет:
Syntax error on line 995 of c:/program files/apache/conf/httpd.conf:

DocumentRoot takes one argument, Root directory of the document tree 
Note the errors or messages above, and press....

Добавлено через 3 минуты и 1 секунду
У меня Zend Studio 5.5

Добавлено через 7 минут и 36 секунд
Fortop, мы не могли бы через аську поговорить? Мой ICQ 438-860-659 
PM MAIL   Вверх
RomanR
Дата 8.3.2008, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 8.3.2008

Репутация: нет
Всего: нет



==================================================================
Я скопировал проект сюда C:/Program Files/Apache Group/Apache/htdocs/www/
Изменил :
<VirtualHost 127.0.0.2:80>
#    ServerAdmin [email protected]
     DocumentRoot  C:/Program Files/Apache Group/Apache/htdocs/www/
     ServerName  www
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>

Перезагрузил Apache, и он мне выдал:

Syntax error on line 995 of c:/program files/apache/conf/httpd.conf:
DocumentRoot takes one argument, Root directory of the document tree 


Добавлено через 9 минут и 44 секунды
Прости. В  DocumentRoot  C:/Program Files/Apache Group/Apache/htdocs/www/ не поставил кавычки. Нужно так:
DocumentRoot  "C:/Program Files/Apache Group/Apache/htdocs/www/"
Все заработало. Спасибо ограмное. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0466 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.