Code: Alles auswählen
$cCurrentContainer
offengestanen ist mir einfach nicht klar, was du genau vor hast. wenn du das mal erklärst, kann man dir möglicherweise ganz einfach helfen.
Code: Alles auswählen
$cCurrentContainer
wahhhh *wand* danke stimmtkummer hat geschrieben:du hast den query zwar abgesetzt, aber du befindest dich noch auf zeile 0. du musst mindestens einen aufruf von $this->db->next_record() vornehmen um auf den ersten eintrag zu gelangen.
normalerweise schlaufst du ja durch die ergebnisse mit
wenn du nur ein ergebnis erwartest (einen einzelnen record) kannst du auch sowas machen:Code: Alles auswählen
while ($this->db->next_record()) { $meinWert = $this->db->f('meinFeldBezeichner'); }
Code: Alles auswählen
if ($this->db->next_record()) { $meinWert = $this->db->f('meinFeldBezeichner'); } else { // der query gab kein ergebnis zurück }
ne, die Template ID im outputkummer hat geschrieben:wahnsinns-thread. ihr versucht tatsächlich, die container-id herauszufinden? alles schön und gut. aber warum nicht einfach den wert von
verwenden? der steht dort nämlich drin.Code: Alles auswählen
$cCurrentContainer
offengestanen ist mir einfach nicht klar, was du genau vor hast. wenn du das mal erklärst, kann man dir möglicherweise ganz einfach helfen.
Code: Alles auswählen
class Hauptklasse{
function __construct(){
$this->db = $GLOBALS['db'];
$this->cfg = $GLOBALS['cfg'];
$this->client = $GLOBALS['client'];
$this->lang = $GLOBALS['lang'];
$this->cfgClient = $GLOBALS['cfgClient'];
$this->sess = $GLOBALS['sess'];
}
}
[...]
class TemplateID extends Hauptklasse {
function auslesen($idart){
$this->idart = $idart;
$oArticle = new Article($this->idart, $this->client, $this->lang);
$sTplID = $oArticle->getField('idtplcfg');
$sql = 'SELECT ca.idcat, ca.idart, tca.idtpl AS tca, tcc.idtpl AS tcc'
. ' FROM con_cat_art AS ca, con_art_lang AS al'
. ' LEFT JOIN con_template_conf AS tca ON al.idtplcfg = tca.idtplcfg, con_cat_lang AS cl'
. ' LEFT JOIN con_template_conf AS tcc ON cl.idtplcfg = tcc.idtplcfg'
. ' WHERE al.idart = '.$this->idart.''
. ' AND al.idlang = '.$this->lang.''
. ' AND ca.idart = al.idart'
. ' AND ca.idcat = cl.idcat'
. ' LIMIT 0 , 30';
$this->db->query($sql);
if ($this->db->next_record()) {
$iArtTpl = $this->db->f('tca');
$iCatTpl = $this->db->f('tcc');
}
if( $iArtTpl ) $iThisTpl = $iArtTpl;
else $iThisTpl = $iCatTpl;
return $iThisTpl;
}
}
Code: Alles auswählen
select
templateconf.idtpl as idtpl
from con_art_lang as artlang
left join con_cat_art as catart on artlang.idart = catart.idart
left join con_cat_lang as catlang on artlang.idlang = catlang.idlang and catart.idcat = catlang.idcat
left join con_template_conf as templateconf on templateconf.idtplcfg = if(artlang.idtplcfg > 0, artlang.idtplcfg, catlang.idtplcfg)
where
artlang.idartlang = {$idartlang}
danke, werd ich gleich mal einbauen und testenkummer hat geschrieben:warum einfach, wenn es kompliziert auch geht. folgender query gibt dir die verwendete idtpl eines artikels zurück (entweder aus der kategorie oder dem artikel).
eine extra-klasse ist dafür eher ein overkill, nicht?Code: Alles auswählen
select templateconf.idtpl as idtpl from con_art_lang as artlang left join con_cat_art as catart on artlang.idart = catart.idart left join con_cat_lang as catlang on artlang.idlang = catlang.idlang and catart.idcat = catlang.idcat left join con_template_conf as templateconf on templateconf.idtplcfg = if(artlang.idtplcfg > 0, artlang.idtplcfg, catlang.idtplcfg) where artlang.idartlang = {$idartlang}
Wenn var böse ist dann ist das auch bööööössseeee_wiewo_ hat geschrieben:var ist ja mal ganz böse
Verdam** voll vergessen!kummer hat geschrieben:du hast den query zwar abgesetzt, aber du befindest dich noch auf zeile 0. du musst mindestens einen aufruf von $this->db->next_record() vornehmen um auf den ersten eintrag zu gelangen.
Im Input steht $cCurrentContainer nicht zur Verfügung.kummer hat geschrieben:wahnsinns-thread. ihr versucht tatsächlich, die container-id herauszufinden? alles schön und gut. aber warum nicht einfach den wert von
so wäre besser:OliverL hat geschrieben:Wenn var böse ist dann ist das auch bööööössseeee![]()
$sCurrentContainer = substr("CMS_VAR[1]", 1, 2);
Code: Alles auswählen
preg_match('/^C(\\d*)CMS_VAR\\[\\d*]$/', "CMS_VAR[1]", $match);
$sCurrentContainer = $match[1];
Code: Alles auswählen
preg_match('/^C(\\d*)CMS_VAR\\[\\d*]$/', "CMS_VAR[1]", $match);
$sCID = $match[1];
Code: Alles auswählen
$sCID = substr(strtok("CMS_VAR[1]","_"), 1, -3);
Code: Alles auswählen
echo '<table>';
echo '<tr>';
echo '<td colspan="2" style="height: 30px; vertical-align: bottom"><strong>H-TAG</strong></td>';
echo '</tr>';
echo '<tr>';
echo '<td>H-TAG über den Artikeln und Kategorien einblenden</td>';
echo '<td><input type="Checkbox" name="CMS_VAR[1]" value="1"'.( "CMS_VALUE[1]" ? ' checked' : '' ).'></td>';
echo '</tr>';
echo '<tr>';
echo '<td>H-TAG verlinken</td>';
echo '<td><input type="Checkbox" name="CMS_VAR[2]" value="1"'.( "CMS_VALUE[2]" ? ' checked' : '' ).'></td>';
echo '</tr>';
echo '</table>';
Code: Alles auswählen
<table>
<tr>
<td colspan="2" style="height: 30px; vertical-align: bottom"><strong>H-TAG</strong></td>
</tr>
<tr>
<td><?php echo mi18n("H-TAG über den Artikeln und Kategorien einblenden"); ?></td>
<td><label><input type="Checkbox" name="CMS_VAR[1]" value="1"<?php echo ( "CMS_VALUE[1]" ? ' checked' : '' ); ?>> <?php echo mi18n("aktiv"); ?></label></td>
</tr>
</table>