gpt4 book ai didi

php - Joomla 3.1 : accessing database from an external PHP

转载 作者:可可西里 更新时间:2023-11-01 07:05:17 25 4
gpt4 key购买 nike

我有一个外部 PHP 脚本,我正在使用 PDO 进行查询:

try
{
$dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);
$sql = "SELECT * FROM $table WHERE userName=:userName";
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':userName', $userName);
$stmt->execute();
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
$dbh = null;
}
catch(PDOException $e)
{
echo $e->getMessage();
}

由于我是 Joomla/PHP 的新手,我不确定这是否是一个好的做法。我当前的设置是否存在任何安全风险?我刚刚发现可以在外部脚本中使用 JFactory,但我只是想知道在我的情况下是否必须改用 JFactory,或者我可以坚持使用 PDO?

最佳答案

试试这个,

define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(__FILE__) );//this is when we are in the root,means path to Joomla installation
define( 'DS', DIRECTORY_SEPARATOR );

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

$app = JFactory::getApplication('site');
$app->initialise();
$db = JFactory::getDBO();// Joomla database object

有关Joomla database的更多信息用法,select operation .

与显式提供数据库名称和主机名相比,这要好得多。

希望它有意义..

关于php - Joomla 3.1 : accessing database from an external PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22162875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com