$uid = 'root';
$pwd = 'sqlpassword';
$dsn = 'mysql:host=localhost;dbname=site-2;port=3306;charset=utf8';
$xpdo = new xPDO($dsn,$uid,$pwd);
echo $o = ($xpdo->connect()) ? 'Connected' : 'Not Connected';
// Issue queries against the foreign database:
$results = $xpdo->query("SELECT id FROM modx_site_content");
$recordCount = $results->rowCount();
print $recordCount;
$c = $xpdo->newQuery('modResource');
$c->setClassAlias('r');
$c->select(array(
'r.id as pageid'
));
if ($c->prepare() && $c->stmt->execute()) {
echo '<code>'.print_r($c->toSQL(), 1).'</code>';
foreach ($c->stmt->fetchAll(PDO::FETCH_ASSOC) as $i => $row) {
echo '<pre>'.print_r($row, 1).'</pre>';
}
}$uid = 'root'; $pwd = 'sqlpassword'; $dsn = 'mysql:host=localhost;dbname=site-2;port=3306;charset=utf8'; $xpdo2 = new xPDO($dsn,$uid,$pwd); echo $o = ($xpdo2->connect()) ? 'Connected' : 'Not Connected';
$results = $xpdo2->query("SELECT id FROM modx_site_content");
$recordCount = $results->rowCount();
print $recordCount;
$c = $xpdo2->newQuery('modResource');
$c->setClassAlias('r');
$c->select(array(
'r.id as pageid'
));
if ($c->prepare() && $c->stmt->execute()) {
echo '<code>'.print_r($c->toSQL(), 1).'</code>';
foreach ($c->stmt->fetchAll(PDO::FETCH_ASSOC) as $i => $row) {
echo '<pre>'.print_r($row, 1).'</pre>';
}
}
If the latter worked it would be easier to query on multiple tables and so on since I could use xPDO like I can on my other custom tables that is in site-1
$packageName = 'mypackage';
$packagepath = $this->modx->getOption('core_path') . 'components/'.$packageName.'/';
$modelpath = $packagepath.'model/';
include($packagepath .'config/config.inc.php');
$dsn = $database_type.':host='.$database_server.';dbname='.$dbase.';charset='.$database_connection_charset;
$options =
array (
xPDO::OPT_CACHE_KEY => 'default',
xPDO::OPT_CACHE_HANDLER => 'xPDOFileCache',
xPDO::OPT_HYDRATE_FIELDS => true,
xPDO::OPT_HYDRATE_RELATED_OBJECTS => true,
xPDO::OPT_HYDRATE_ADHOC_FIELDS => true,
xPDO::OPT_LOADER_CLASSES => array('modAccessibleObject'),
xPDO::OPT_VALIDATOR_CLASS => 'validation.modValidator',
xPDO::OPT_VALIDATE_ON_SAVE => true,
'cache_system_settings' => true,
'cache_system_settings_key' => 'system_settings'
);
$this->xpdo = new xPDO($dsn,$database_user,$database_password,$options);
$this->xpdo->addPackage($packageName,$modelpath,$prefix);