function getOffers(){
global $modx;
$select = $modx->newQuery('Offers');
$select->select($modx->getSelectColumns('Accomodations', 'Countries'));
$select->select(array(
'Countries.naam as countryName',
'Countries.alias as countryAlias',
'Accomodations.naam as accomodationName',
'Accomodations.plaats',
'Accomodations.intro',
'Accomodations.alias',
'Accomodations.klm',
'Accomodations.soort',
'Accomodations.vanafPrijs',
'Accomodations.offer_price',
'Accomodations.numberDays',
'Accomodations.klasse',
'Accomodations.thumbnail',
'Accomodations.code',
));
$select->leftJoin('Offers','Accomodations', 'Offers.idAccomodation = Accomodations.id');
$select->leftJoin('Countries', 'Accomodations', 'countries.id = accomodations.land_id');
$select->where(array(
'active' => 1,
));
$select->groupby('Offers.sorteer');
$result = $modx->getIterator('Offers', $select);
if(empty($result)){
$result = "leeg!";
}
else{}
return $result;
}
$results = $moreReises->getOffers();
foreach($results as $resultaten){
$result = $resultaten->toArray();
//iterating values like this
$result['value'];
$result = $modx->getCollectionGraph('Offers', $select);
function getMore(){
$select = "SELECT
countries.naam as countryName,
countries.alias as countryAlias,
accomodations.naam as accomodationName,
accomodations.plaats,
accomodations.intro,
accomodations.alias,
accomodations.klm,
accomodations.soort,
accomodations.vanafPrijs,
accomodations.offer_price,
accomodations.numberDays,
accomodations.klasse,
accomodations.thumbnail,
accomodations.code
FROM offers
LEFT JOIN accomodations ON offers.idAccomodation = accomodations.id
LEFT JOIN countries ON countries.id = accomodations.land_id
WHERE accomodations.active = 1
ORDER BY offers.sorteer
";
$query = mysql_query($select);
$result = array();
if (mysql_numrows($query) == 0) {
//Geen accomodations
} else {
while ($row = mysql_fetch_object($query)) {
foreach ($row as $key => $value) {
$row->$key = $this->cleanfromdatabase($row->$key);
}
$result[] = $row;
}
}
return $result;
}
$modx->setOption(xPDO::OPT_HYDRATE_ADHOC_FIELDS, true);
$select->leftJoin('Offers','Accomodations', 'Offers.idAccomodation = Accomodations.id');
$select->leftJoin('Countries', 'Accomodations', 'countries.id = accomodations.land_id');
function getOffers(){
global $modx;
$modx->setOption(xPDO::OPT_HYDRATE_ADHOC_FIELDS, true);
$select = $modx->newQuery('Offers');
$select->select($modx->getSelectColumns('Accomodations', 'Countries'));
$select->select(array(
'Offers.id',
'Countries.naam as countryName',
'Countries.alias as countryAlias',
'Accomodations.naam as accomodationName',
'Accomodations.plaats',
'Accomodations.intro',
'Accomodations.alias',
'Accomodations.klm',
'Accomodations.soort',
'Accomodations.vanafPrijs',
'Accomodations.offer_price',
'Accomodations.numberDays',
'Accomodations.klasse',
'Accomodations.thumbnail',
'Accomodations.code',
));
$select->leftJoin('Offers','Accomodations', 'Offers.idAccomodation = Accomodations.id');
$select->leftJoin('Countries', 'Accomodations', 'countries.id = accomodations.land_id');
$select->where(array(
'active' => 1,
));
$select->groupby('Offers.sorteer');
$result = $modx->getCollection('Offers', $select);
return $result;
}
SELECT `Countries`.`id`, `Countries`.`code`, `Countries`.`land_id`, `Countries`.`alias`, `Countries`.`naam`, `Countries`.`plaats`, `Countries`.`intro`, `Countries`.`vanafPrijs`, `Countries`.`numberDays`, `Countries`.`infoAlgemeen`, `Countries`.`infoFaciliteiten`, `Countries`.`infoAccomodatie`, `Countries`.`klasse`, `Countries`.`soort`, `Countries`.`type`, `Countries`.`details`, `Countries`.`thumbnail`, `Countries`.`active`, `Countries`.`lastminute`, `Countries`.`aangemaakt`, `Countries`.`gewijzigd`, `Countries`.`reisSoorten`, `Countries`.`accomodatieTypes`, `Countries`.`offer_price`, `Countries`.`video`, `Countries`.`losse_prijs`, `Countries`.`meta_beschrijving`, `Countries`.`meta_zoekwoorden`, `Countries`.`zoover`, `Countries`.`dag_prijs`, `Countries`.`klm`, Offers.id, Countries.naam as countryName, Countries.alias as countryAlias, Accomodations.naam as accomodationName, Accomodations.plaats, Accomodations.intro, Accomodations.alias, Accomodations.klm, Accomodations.soort, Accomodations.vanafPrijs, Accomodations.offer_price, Accomodations.numberDays, Accomodations.klasse, Accomodations.thumbnail, Accomodations.code FROM `custom_offers` AS `Offers` LEFT JOIN `custom_offers` `Accomodations` ON Offers.idAccomodation = Accomodations.id LEFT JOIN `custom_countries` `Accomodations` ON countries.id = accomodations.land_id WHERE `Offers`.`active` = '1' GROUP BY Offers.sorteer
Actually i didn't
So basically, for every table join i currently have i should generate new class and maps for?
That seems like an odd way of doing a relatively simple query.