[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • [Gelöst] Anzahl der Slices in Artikel ermitteln
Seite 1 von 1

[Gelöst] Anzahl der Slices in Artikel ermitteln

Verfasst: 9. Aug 2010, 11:36
von MaloRox
Hola!

Ich müsste die Anzahl der Slices eines Artikels ermitteln. Habe keine Idee wie ich das mache...

Hat jemand eine Idee wie ich das ermitteln kann?

Danke im Voraus für jede Hilfe! :)

Re: Anzahl der Slices in Artikel ermitteln

Verfasst: 9. Aug 2010, 12:49
von jdlx
MaloRox hat geschrieben:Ich müsste die Anzahl der Slices eines Artikels ermitteln. Habe keine Idee wie ich das mache...
Klingt so als sollte es dir weiterhelfen: OOArticleSlice::getSlicesForArticle

hth,
Jan

Verfasst: 9. Aug 2010, 15:07
von MaloRox
Hi Jean und danke!

War's net ganz. Habe es jetzt so heraus bekommen und kann das ermittelte Array auch durchlaufen:

Code: Alles auswählen

// Alle Slices in Artikel ID 11 des Moduls "Fliesstext" (ID: 1) auslesen
$slicesArray = OOArticleSlice::getSlicesForArticleOfType(11,1);

// Anzahl der Slices ermitteln
$anzahlSclices=count($slicesArray)

// Slices durchlaufen
foreach($slicesArray as $slice) {

   ...

}

Vielen herzlichen Dank, es hat mich weiter gebracht :)

Verfasst: 9. Aug 2010, 15:38
von Thomas.Blum
Hej,

mit

Code: Alles auswählen

getSlicesForArticleOfType
bekommst du aber nur die Slices geliefert, die auch das entsprechende Modul benutzen.

Ich würde gar eher eine direkte SQL Abfrage machen.

vg Thomas

Verfasst: 9. Aug 2010, 20:58
von MaloRox
hi thomas und danke!

jap genau so wollte ich es auch. das passt 1a mit dem was ich vorhabe!

danke! :)

Verfasst: 9. Aug 2010, 22:15
von darwin
@Thomas...
kannste du bitte mal ein Beispiel Query zum Auslesen
der Slices eines Artikels posten. Danke

grz. Chris

Verfasst: 10. Aug 2010, 08:44
von raybeam
Hallo Chris,

so z. B.

Code: Alles auswählen

SELECT * FROM `rex_article_slice` WHERE `article_id`=1
Gruß

Peter

Verfasst: 10. Aug 2010, 08:45
von darwin
redaxo ist so einfach gestrickt und ich denk einfach immer zu
kompliziert... *grmpf*.

Danke Peter...
grz. Chris

Verfasst: 10. Aug 2010, 08:47
von MaloRox
danke dafür!
ist auch doch besser es so auszulesen. bei getSlicesForArticleOfType vermurkst er die reihenfolge der slices. nicht zufriedenstellend. werde es heute morgen auch wieder umprogrammieren.

Verfasst: 10. Aug 2010, 08:50
von Thomas.Blum
Hej Chris,

anbei 2 Beispiele

Code: Alles auswählen

<?php

// Anzahl der Slices eines Artikels
$sql = new rex_sql();
$sql->debugsql = true;
$sql->setQuery('SELECT COUNT(id) AS count FROM rex_article_slice WHERE article_id = "'.$this->getValue('article_id').'" AND clang = "'.$REX['CUR_CLANG'].'" GROUP BY article_id');


echo $sql->getValue('count');



// Slices in der richtigen Reihenfolge eines Artikels
$slice_revision = 0;

$sql = new rex_sql();
$sql->debugsql = true;
$res = $sql->getArray("SELECT ".$REX['TABLE_PREFIX']."article_slice.*
            FROM
              ".$REX['TABLE_PREFIX']."article_slice
            WHERE
              ".$REX['TABLE_PREFIX']."article_slice.article_id='".$this->getValue('article_id')."' AND
              ".$REX['TABLE_PREFIX']."article_slice.clang='".$REX['CUR_CLANG']."' AND
              ".$REX['TABLE_PREFIX']."article_slice.revision='".$slice_revision."'
              ORDER BY ".$REX['TABLE_PREFIX']."article_slice.re_article_slice_id");
              
 
print '<pre style="text-align: left;">';
print_r($res);
print '</pre>';
?>
vg Thomas

Verfasst: 10. Aug 2010, 08:51
von MaloRox
riesigen dank, thomas! 1a! :)

Verfasst: 10. Aug 2010, 09:31
von darwin
öhm.. dacht ich mir doch das man dafür n
paar Codzeilen mehr braucht ...

Somit ists nun auch hier im Forum verewigt ;) ...

Danke. Thomas.
grz. Chris