2013-12-17 2 views
0

У меня есть сайт joomla, и я создаю фотогалерею с .php, вызывающим картинки с запросом SELECT (этот php заканчивается joomla, но вызывает фотографии из joomla DB)Подключитесь к joomla DB с JPATH_BASE и JFactory :: getDBO

Когда gallery.php находится в корне моего сайта, он работает нормально. Но когда я хочу, чтобы вставить его в папку, то я получаю эту ошибку:

Warning: require_once(/homez.420/xxxxx/www/gallery/includes/defines.php) [function.require-once]: failed to open stream: No such file or directory in /homez.420/xxxxx/www/gallery/gallery.php on line 30 

Fatal error: require_once() [function.require]: Failed opening required '/homez.420/xxxxx/www/gallery/includes/defines.php' (include_path='.:/usr/local/lib/php') in /homez.420/xxxxx/www/gallery/gallery.php on line 30 

Я все еще новичок в PHP, и я не могу получить путь, чтобы найти, как сделать эти две линии выскочить из галереи папки, так что его называют этот документ вместо: /homez.420/xxxxx/ WWW/включает /defines.php

require_once (JPATH_BASE .DS.'includes'.DS.'defines.php'); 
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php'); 

Вот полный код

<?php 
define('_JEXEC', 1); 
define('JPATH_BASE', dirname(__FILE__)); //this is line 30 : where the glitch is 
define('DS', DIRECTORY_SEPARATOR); 

require_once (JPATH_BASE .DS.'includes'.DS.'defines.php'); 
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php'); 

$mainframe =& JFactory::getApplication('site'); 
$mainframe->initialise(); 
$db = &JFactory::getDBO(); 
?> 

Спасибо большое за йо помогите!

+0

Вы должны изменить эту строку в том, что она указывает на правильный каталог: 'определить ('JPATH_BASE', dirname (__ FILE__)); '.... также вам не нужно использовать' $ db1' и '$ db2', просто определите его как-то так:' $ db = JFactory :: getDbo (); ' – Lodder

+0

Спасибо Lodder за ваш ответ! Прошу прощения за $ db1 и $ db2, я изменил его на $ db = JFactory :: getDbo() ;. Я понимаю, что вы подразумеваете под «Вам нужно изменить эту строку, чтобы она указывала на правильный каталог», но я не знаю, как это сделать. Должен ли я делать что-то вроде: 'define ('JPATH_BASE', dirname (/homez.420/xxxxx/www/));'? В очередной раз благодарим за помощь! – JinSnow

+0

В настоящее время сценарий галереи находится в следующей папке 'homez.420/xxxxx/www/gallery', но где находится корень вашего сайта Joomla? Что-то вроде этого >> 'homez.420/xxxxx/www/joomla'? Как только я узнаю корень вашего сайта Joomla, я могу дать вам конкретный ответ для вас. – Lodder

ответ

0

Решение было простым: линии 30 заменить:

define('JPATH_BASE', dirname(__FILE__)); 

на сайт корневого пути:

define('JPATH_BASE', '/homez.420/xxxxxxx/www'); 
Смежные вопросы