включить класс Jfactory во внешний файл php, Joomla

Я пишу модуль для Joomla, на данный момент мне действительно нужно иметь возможность подключиться к базе данных с помощью Jfactory. Обычно можно было просто использовать $ db = JFactory :: getDBO (); , но ошибка PHP говорит мне, что класс JFactory не включен. Итак, теперь мне нужно знать, как включить этот класс JFactory . Я попробовал несколько предложений, найденных в Интернете, но безуспешно. Это код (он отлично работает в автономном режиме)

    <?php
// server info
$server = 'localhost';
$user = 'ss';
$pass = 'oo';
$db = 'ss';

$connection = mysql_connect($server, $user, $pass)  or die ("Could not connect to server ... \n" . mysql_error ());
 mysql_select_db($db) or die ("Could not connect to database ... \n" . mysql_error ());


if(isSet($_POST['username']))
{
$username = $_POST['username'];
$username = mysql_real_escape_string($username);
$sql_check = mysql_query("SELECT Username FROM users WHERE Username='$username'");

if(mysql_num_rows($sql_check))
{
echo '<font color="#cc0000"><STRONG>'.$username.'</STRONG> is already in use.</font>';
}
else
{
echo 'OK';
}

}

?>

Надеюсь, моя проблема вам понятна. Мы будем очень благодарны за вашу помощь.

Попытка 1

<?php

include('../../../../configuration.php');

include('../../../../libraries/joomla/factory.php');

$config =& JFactory::getConfig();

// server info
$server2 = $host;
$user2 = $user;
$pass2 = $password;
$db2 = $db;

$connection = mysqli_connect($server2, $user2, $pass2)  or die ("Could not connect to server ... \n" . mysqli_error ());
 mysqli_select_db($db2) or die ("Could not connect to database ... \n" . mysqli_error ());


if(isSet($_POST['username']))
{
$username = $_POST['username'];
$username = mysql_real_escape_string($username);
$sql_check = mysql_query("SELECT username FROM #__users WHERE username='$username'");

if(mysql_num_rows($sql_check))
{
echo '<font color="#cc0000"><STRONG>'.$username.'</STRONG> is already in use.</font>';
}
else
{
echo 'OK';
}

}
?>

, но она тоже не работает.

попытка 2 (успешная)

include('../../../../configuration.php');
$jc = new JConfig();
$table = 'users';
$users = $jc->dbprefix . $table;
// connect to the database
$mysqli = new mysqli($jc->host, $jc->user, $jc->password, $jc->db);

Теперь все работает как хочу. Единственное, что сейчас: безопасность. Я не уверен, что это доказательство хакера. Кто-нибудь может это просмотреть? спасибо :)

12
задан Maarten Hartman 4 December 2013 в 21:40
поделиться