[UPDATE: funktioniert fast] template nächste tabellenzeile

Alles zu Styles, Templates, Icons und Smilies für phpBB 2.0, sowie allgemeine Designfragen zur Integration von phpBB in bestehende Websites.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

ich habe den Fehler auch schon gefunden...

du benutzt die Schleife INNERHALB einer Whileschleife...

Problem:
er ist immer beim letzten Bild, weil er je Eintrag den er ausliest das dann speichert und in die Schleife schickt
hier ist das ganze ganz anders zu lösen, es gibt die Möglichkeiten:
  1. innerhalb der while schleife - ohne for schleifen mit einem zusätzlichen Zähler
  2. ausserhalb der While-Schleife mit einem zusätzlichem Array
Vorteil an a)
er zeigt bis zu einem eventuell auftretendem auslese Fehler alles an
Vorteil bei b)
Falls beim auslesen ein Fehler auftritt kann man leichter abbrechen und die Ausgabe verhindern und durch eine Fehlermeldung ersetzen

b ist vermutlich um längen einfacher, bei a stoße ich schon bei der Theorie auf viele Probleme die teilweise umständlich zu umschiffen sind.
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
d23
Mitglied
Beiträge: 132
Registriert: 28.01.2003 13:53

Beitrag von d23 »

gut, wenn b einfacher ist, dann wär b wohl besser ? :D

das problem ist, wie richte ich den array dann so ein, dass er auch richtig funktioniert ?
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

vor der while schleife erstellst du ein leeres Array
$array = array();

und in der whileschleife speicherst du die Sachen dann halt in dieser

while ... {
$array[]['wie du das 1. Feld nennen willst'] = Wert den du ausliest;
$x = count($array) - 1;
$array[$x]['wie du dsa 2., 3., ... Feld nennen willst'] = Wert den du ausliest;
}

das [] bedeutet er legt ein neues Feld am Ende an
das count -1 schaut wie weit wir schon sind und
das $array[$x] sagt dann das die Werte zusammen gehören

in meiner Schleife musst du dann halt [$x] wieder verwenden wenn du die Variablen ans Template übergibst.

Schaffst du das oder ist noch etwas unklar?
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
d23
Mitglied
Beiträge: 132
Registriert: 28.01.2003 13:53

Beitrag von d23 »

Code: Alles auswählen

$bildarray = array();


$alb_sql = 'SELECT * FROM `gallery_pix` WHERE `album_id` = ' . $gal_id . ' ORDER BY `id` ASC LIMIT ' . $start . ', 24';
if(!$alb_result = $db->sql_query($alb_sql)) {
        message_die(GENERAL_ERROR, 'Fehler beim Auslesen der Album-Informationen', '', __LINE__, __FILE__, $alb_sql);
}

while($alb_row = $db->sql_fetchrow($alb_result)) {



$cnt_alb = mysql_query("SELECT * FROM `gallery_pix` WHERE `album_id` = '" . $alb_row['album_id'] . "'");
$cnt_alb = mysql_num_rows($cnt_alb);

$cnt_cmt = mysql_query("SELECT * FROM `gallery_comments` WHERE `pic_id` = '" . $alb_row['id'] . "'");
$cnt_cmt = mysql_num_rows($cnt_cmt);

$akt_ptid = $alb_row['id'];

$albpl_sql = mysql_query('SELECT * FROM `gallery_albums` WHERE `id` = ' . $gal_id);
$gal_ord = mysql_fetch_row($albpl_sql);

$rd_datum = $gal_ord['3'];

$day = date("w", $rd_datum);
$days = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
$date = date("j", $rd_datum);
$month = date("n", $rd_datum);

$months = array(1=>"Januar", 2=>"Februar", 3=>"März", 4=>"April", 5=>"Mai", 6=>"Juni", 7=>"Juli", 8=>"August", 9=>"September", 10=>"Oktober", 11=>"November", 12=>"Dezember");

$year = date("Y", $rd_datum);
$clc_datum = $days[$day] . ", " . $date . ". " . $months[$month] . "   " . $year;


$template->assign_vars(array(
                'ALBID' => $gal_ord['0'],
                'ALBTITLE' => $gal_ord['1'],
                'ALBAUTHOR' => $gal_ord['2'],
                'ALBADD_DATE' => $clc_datum
                 ));



$bildarray[]['index'] = $alb_row['id'];
$x = count($bildarray) - 1;
$bildarray[$x]['feldx'] = "<a href=gallery_pic.php?pic_id=" . $akt_ptid . "><img src=\"gallery/" . $alb_row['ordner'] . "/_thm/" . $alb_row['dateiname'] . "\"></a><br>";


$zeilen = count($cnt_alb);

$end = $x + 4;
for ($x = 1; $x <= $zeilen; $x++)
{
        $template->assign_block_vars('zeile', array(
        ));

        $start = $x;

        for ($y = $start; $y <= $end; $y++)
        {
              $template->assign_block_vars('zeile.bild', array(
                  'THMIMG' => $bildarray[$x]['feldx'],
                  'CNT_CMTS' => $cnt_cmt
               ));

          $x++;

         if(!isset($cnt_alb[$x])){
$template->assign_block_vars('zeile.bild', array(
'ABBRUCH' => '<!-- Abbruch -->'
));
break;
}
        else {
        $template->assign_block_vars('zeile.bild', array(
'ABBRUCH' => '<!-- ok, zählt hoch -->'
));
}

        }

}



}


so ?

hat zum ergebnis, das im array selber 6 bilder statt der 3 vorhandenen geladen werden (print_r) und ausgegeben wird nur ein bild zweimal

was habe ich falsch gemacht ?
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

bitte strukturier das mal ein wenig (also einrücken und so)
das ist nämlich leicht undurchsichtig... mich wundert gerade das scheinbar alles in der while schleife abläuft, das ist falsch....
da sollen nur die Werte in arrays gespeichert werden.

Die Ausgabe selber ist AUSSERhalb der While Schleife
gesteuert durch die for's...
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
d23
Mitglied
Beiträge: 132
Registriert: 28.01.2003 13:53

Beitrag von d23 »

so, sorry, ich habs total verpennt, scheinbar funktioniert die mail benachrichtigung hier nicht so wie sie sollte ;)

Code: Alles auswählen

<?php
//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
$gal_id = ( isset($HTTP_GET_VARS['gal_id']) ) ? intval($HTTP_GET_VARS['gal_id']) : 0;

//Session auslesen und Benutzer-Informationen laden
$userdata = session_pagestart($user_ip, PAGE_GALLERY);
init_userprefs($userdata);
$page_title = 'Gallery';
 include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'gallery_album' => 'gallery_album.tpl',
));



/*
if ( $userdata['session_logged_in'] )
{
    // Code, wenn ein Benutzer angemeldet ist
}
else
{
    // Code, wenn kein Benutzer angemeldet ist
}

// User die zugriff haben: es sind gruppen_ids, gruppennamen und user_ids  erlaubt wobei bei den gruppen namen und ids ein g am anfang angehängt werden muss.
$allowed_u = array();
$allowed_u[] = 'g3'; //gruppe

$access_allowed = false;
if( in_array($userdata['user_id'],$allowed_u))
{
        $access_allowed = true;
}

else
{
        $sql = "SELECT g.group_id, g.group_name
                FROM " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g
                WHERE ug.user_id = '" . $userdata['user_id'] . "'
                        AND g.group_id = ug.group_id";
        if ( !($result = $db->sql_query($sql)) )
        {
                message_die(GENERAL_ERROR, 'Could not get user group.', '', __LINE__, __FILE__, $sql);
        }
        $access_allowed = false;
        while( list($group_id, $group_name) = $db->sql_fetchrow($result) )
        {
                if( in_array('g' . $group_id[group_id],$allowed_u ))
                {
                         $access_allowed = true;
                         break;
                }
                if( in_array('g' . $group_name[group_name],$allowed_u))
                {
                         $access_allowed = true;
                         break;
                }
        }
        if( !$access_allowed )
        {
                message_die(GENERAL_MESSAGE, 'Sie haben keinen Zugriff auf diese Seite.');
        }
}

*/


$bildarray = array();


$alb_sql = 'SELECT * FROM `gallery_pix` WHERE `album_id` = ' . $gal_id . ' ORDER BY `id` ASC LIMIT ' . $start . ', 24';
if(!$alb_result = $db->sql_query($alb_sql)) {
        message_die(GENERAL_ERROR, 'Fehler beim Auslesen der Album-Informationen', '', __LINE__, __FILE__, $alb_sql);
}

while($alb_row = $db->sql_fetchrow($alb_result))

{           /* beginn while */



$cnt_alb = mysql_query("SELECT * FROM `gallery_pix` WHERE `album_id` = '" . $alb_row['album_id'] . "'");
$cnt_alb = mysql_num_rows($cnt_alb);

$cnt_cmt = mysql_query("SELECT * FROM `gallery_comments` WHERE `pic_id` = '" . $alb_row['id'] . "'");
$cnt_cmt = mysql_num_rows($cnt_cmt);

$akt_ptid = $alb_row['id'];

$albpl_sql = mysql_query('SELECT * FROM `gallery_albums` WHERE `id` = ' . $gal_id);
$gal_ord = mysql_fetch_row($albpl_sql);

$rd_datum = $gal_ord['3'];

$day = date("w", $rd_datum);
$days = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
$date = date("j", $rd_datum);
$month = date("n", $rd_datum);

$months = array(1=>"Januar", 2=>"Februar", 3=>"März", 4=>"April", 5=>"Mai", 6=>"Juni", 7=>"Juli", 8=>"August", 9=>"September", 10=>"Oktober", 11=>"November", 12=>"Dezember");

$year = date("Y", $rd_datum);
$clc_datum = $days[$day] . ", " . $date . ". " . $months[$month] . "   " . $year;


$template->assign_vars(array(
                'ALBID' => $gal_ord['0'],
                'ALBTITLE' => $gal_ord['1'],
                'ALBAUTHOR' => $gal_ord['2'],
                'ALBADD_DATE' => $clc_datum
                 ));



$bildarray[]['index'] = $alb_row['id'];
$x = count($bildarray) - 1;
$bildarray[$x]['feldx'] = "<a href=gallery_pic.php?pic_id=" . $akt_ptid . "><img src=\"gallery/" . $alb_row['ordner'] . "/_thm/" . $alb_row['dateiname'] . "\"></a><br>";


$zeilen = count($cnt_alb);

$end = $x + 4;

for ($x = 1; $x <= $zeilen; $x++)
{       /* start for1 */
        $template->assign_block_vars('zeile', array(
        ));

        $start = $x;

        for ($y = $start; $y <= $end; $y++)
        {                     /* start for2 */
              $template->assign_block_vars('zeile.bild', array(
                  'THMIMG' => $bildarray[$x]['feldx'],
                  'CNT_CMTS' => $cnt_cmt
               ));

          $x++;

           if(!isset($cnt_alb[$x]))
           {
           $template->assign_block_vars('zeile.bild', array('ABBRUCH' => '<!-- Abbruch -->'));
           break;
           }

           else
           {
           $template->assign_block_vars('zeile.bild', array('ABBRUCH' => '<!-- ok, zählt hoch -->'));
           }

        }                    /* ende for2 */

}        /* ende for1 */



}        /* ende der while schleife */


/* start pagination, keine schleife mehr offen  */

$board_config['topics_per_page'] = 24;

if ( $board_config['topics_per_page'] > 10 )
{
        $sql = "SELECT count(*) AS total
                FROM gallery_albums";
        $result = $db->sql_query($sql);

                if ( $total = $db->sql_fetchrow($result) )
        {
                $total_members = $total['total'];

                $pagination = generate_pagination("gallery_dir.$phpEx?gal_id=" . $gal_id . "", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';
        }
        $db->sql_freeresult($result);
}
else
{
        $pagination = '&nbsp;';
        $total_members = 24;
}

$template->assign_vars(array(
        'PAGINATION' => $pagination,
        'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor( $start / $board_config['topics_per_page'] ) + 1 ), ceil( $total_members / $board_config['topics_per_page'] )),

        'L_GOTO_PAGE' => $lang['Goto_page'])
);

/* end pagination */

$template->pparse('gallery_album');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
der code ist jetzt ein bißchen mehr strukturiert, ich habe auch durch kommentare kenntlich gemacht, von wo bis wo eine schleife geht.
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

suche:

Code: Alles auswählen

while($alb_row = $db->sql_fetchrow($alb_result)) 

{
einfügen, davor:

Code: Alles auswählen

$x = 0;
suche:

Code: Alles auswählen

$cnt_alb = mysql_num_rows($cnt_alb);
ersetze:

Code: Alles auswählen

$cnt_alb[$x] = mysql_num_rows($cnt_alb);
suche:

Code: Alles auswählen

$cnt_cmt = mysql_num_rows($cnt_cmt);
ersetze:

Code: Alles auswählen

$cnt_cmt[$x] = mysql_num_rows($cnt_cmt);
suche:

Code: Alles auswählen

$akt_ptid = $alb_row['id'];
ersetze:

Code: Alles auswählen

$akt_ptid = $alb_row['id'];
Versuch und alternativänderung hat geschrieben:!!Versuch!!suche:

Code: Alles auswählen

$day = date("w", $rd_datum); 
$days = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"); 
$date = date("j", $rd_datum); 
$month = date("n", $rd_datum); 

$months = array(1=>"Januar", 2=>"Februar", 3=>"März", 4=>"April", 5=>"Mai", 6=>"Juni", 7=>"Juli", 8=>"August", 9=>"September", 10=>"Oktober", 11=>"November", 12=>"Dezember"); 

$year = date("Y", $rd_datum); 
$clc_datum = $days[$day] . ", " . $date . ". " . $months[$month] . "   " . $year;
!!probiere!!, ersetze:

Code: Alles auswählen

$clc_datum[$x] = date('l, j. F Y', $rd_datum);
$alb_id[$x] = $gal_ord['0'];
$alb_title[$x] = $gal_ord['1'];
$alb_author = $gal_ord['2'];
Wenn Versuch gescheitert, und nur dann (sieht man erst nach allen codechanges!!
suche:

Code: Alles auswählen

$clc_datum = $days[$day] . ", " . $date . ". " . $months[$month] . "   " . $year;
ersetze

Code: Alles auswählen

$clc_datum[$x] = $days[$day] . ", " . $date . ". " . $months[$month] . "   " . $year;
$alb_id[$x] = $gal_ord['0'];
$alb_title[$x] = $gal_ord['1'];
$alb_author = $gal_ord['2'];
Das muss wieder immer gemacht werden !!!
lösche:

Code: Alles auswählen

$template->assign_vars(array( 
                'ALBID' => $gal_ord['0'], 
                'ALBTITLE' => $gal_ord['1'], 
                'ALBAUTHOR' => $gal_ord['2'], 
                'ALBADD_DATE' => $clc_datum 
                 )); 
suche:

Code: Alles auswählen

$zeilen = count($cnt_alb);
....
}        /* ende for1 */ 
verschiebe nach

Code: Alles auswählen

}        /* ende der while schleife */
suche:

Code: Alles auswählen

$start = $x; 
füge danach ein:

Code: Alles auswählen

$end = $x + 4;
suche:

Code: Alles auswählen

$template->assign_block_vars('zeile.bild', array(
füge ein, danach:

Code: Alles auswählen

                'ALBID' => $alb_id[$x],
                'ALTITLE' => $alb_title[$x],
                'ALAUTHOR' => $alb_author[$x],
                'ALBADD_DATE' => $clc_datum[$x],

Soo, das sollte reichen... falls noch was schiefläuft sag einfach bescheid
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
d23
Mitglied
Beiträge: 132
Registriert: 28.01.2003 13:53

Beitrag von d23 »

Code: Alles auswählen

$cnt_alb = mysql_query("SELECT * FROM `gallery_pix` WHERE `album_id` = '" . $alb_row['album_id'] . "'");
$cnt_alb[$x] = mysql_num_rows($cnt_alb);

$cnt_cmt = mysql_query("SELECT * FROM `gallery_comments` WHERE `pic_id` = '" . $alb_row['id'] . "'");
$cnt_cmt[$x] = mysql_num_rows($cnt_cmt);
die beiden verursachen einen fehler:

Code: Alles auswählen

Warning: Cannot use a scalar value as an array in gallery_album.php on line 93

Warning: Cannot use a scalar value as an array in gallery_album.php on line 96

Warning: Cannot use a scalar value as an array in gallery_album.php on line 93

Warning: Cannot use a scalar value as an array in gallery_album.php on line 96

Warning: Cannot use a scalar value as an array in gallery_album.php on line 93

Warning: Cannot use a scalar value as an array in gallery_album.php on line 96
Gallery
ansonsten sieht es aus, als würde es gehen. bekomm zwar im moment nur ein bild ausgegeben, liegt aber wohl am fehler
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

dann benenne sie in andere Variablen, also die mit dem [$x], das $x muss aber auch dort wieder vorkommen
$cnt_alb[$x] zum Beispiel in $pic_alb[$x]
und
$cnt_cmt[$x] in $pic_cmt[$x]

ACHTUNG!! das muss dann auch bei dem $template->assign_block_vars geändert werden
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
d23
Mitglied
Beiträge: 132
Registriert: 28.01.2003 13:53

Beitrag von d23 »

hab das dementsprechend geändert, komme aber nicht wirklich weiter -.-

ich habe dir per pn mal einen demolink geschickt, zum einsatzort des scriptes.

ansonsten hier mal wieder der aktuelle source:

Code: Alles auswählen

<?php
//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
$gal_id = ( isset($HTTP_GET_VARS['gal_id']) ) ? intval($HTTP_GET_VARS['gal_id']) : 0;

//Session auslesen und Benutzer-Informationen laden
$userdata = session_pagestart($user_ip, PAGE_GALLERY);
init_userprefs($userdata);
$page_title = 'Gallery';
 include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'gallery_album' => 'gallery_album.tpl',
));



/*
if ( $userdata['session_logged_in'] )
{
    // Code, wenn ein Benutzer angemeldet ist
}
else
{
    // Code, wenn kein Benutzer angemeldet ist
}

// User die zugriff haben: es sind gruppen_ids, gruppennamen und user_ids  erlaubt wobei bei den gruppen namen und ids ein g am anfang angehängt werden muss.
$allowed_u = array();
$allowed_u[] = 'g3'; //gruppe

$access_allowed = false;
if( in_array($userdata['user_id'],$allowed_u))
{
        $access_allowed = true;
}

else
{
        $sql = "SELECT g.group_id, g.group_name
                FROM " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g
                WHERE ug.user_id = '" . $userdata['user_id'] . "'
                        AND g.group_id = ug.group_id";
        if ( !($result = $db->sql_query($sql)) )
        {
                message_die(GENERAL_ERROR, 'Could not get user group.', '', __LINE__, __FILE__, $sql);
        }
        $access_allowed = false;
        while( list($group_id, $group_name) = $db->sql_fetchrow($result) )
        {
                if( in_array('g' . $group_id[group_id],$allowed_u ))
                {
                         $access_allowed = true;
                         break;
                }
                if( in_array('g' . $group_name[group_name],$allowed_u))
                {
                         $access_allowed = true;
                         break;
                }
        }
        if( !$access_allowed )
        {
                message_die(GENERAL_MESSAGE, 'Sie haben keinen Zugriff auf diese Seite.');
        }
}

*/


$bildarray = array();


$alb_sql = 'SELECT * FROM `gallery_pix` WHERE `album_id` = ' . $gal_id . ' ORDER BY `id` ASC LIMIT ' . $start . ', 24';
if(!$alb_result = $db->sql_query($alb_sql)) {
        message_die(GENERAL_ERROR, 'Fehler beim Auslesen der Album-Informationen', '', __LINE__, __FILE__, $alb_sql);
}

$x = 0;

while($alb_row = $db->sql_fetchrow($alb_result))

{           /* beginn while */



$cnt_alb = mysql_query("SELECT * FROM `gallery_pix` WHERE `album_id` = '" . $alb_row['album_id'] . "'");
$pic_alb[$x] = mysql_num_rows($cnt_alb);

$cnt_cmt = mysql_query("SELECT * FROM `gallery_comments` WHERE `pic_id` = '" . $alb_row['id'] . "'");
$pic_cmt[$x] = mysql_num_rows($cnt_cmt);

$akt_ptid[$x] = $alb_row['id'];

$albpl_sql = mysql_query('SELECT * FROM `gallery_albums` WHERE `id` = ' . $gal_id);
$gal_ord = mysql_fetch_row($albpl_sql);

$rd_datum = $gal_ord['3'];

$clc_datum = date('l, j. F Y', $rd_datum);
$alb_id = $gal_ord['0'];
$alb_title = $gal_ord['1'];
$alb_author = $gal_ord['2'];



$bildarray[]['index'] = $alb_row['id'];
$x = count($bildarray) - 1;
$bildarray[$x]['feldx'] = "<a href=gallery_pic.php?pic_id=" . $akt_ptid[$x] . "><img src=\"gallery/" . $alb_row['ordner'] . "/_thm/" . $alb_row['dateiname'] . "\"></a><br>";



}        /* ende der while schleife */

$zeilen = count($pic_alb);

$end = $x + 4;

for ($x = 1; $x <= $zeilen; $x++)
{       /* start for1 */
        $template->assign_block_vars('zeile', array(
        ));

        $start = $x;
        $end = $x + 4;

        for ($y = $start; $y <= $end; $y++)
        {                     /* start for2 */
              $template->assign_block_vars('zeile.bild', array(
                  'THMIMG' => $bildarray[$x]['feldx'],
                  'ALBID' => $alb_id,
                'ALTITLE' => $alb_title,
                'ALAUTHOR' => $alb_author,
                'ALBADD_DATE' => $clc_datum,
                  'CNT_CMTS' => $pic_cmt[$x]
               ));

          $x++;

           if(!isset($pic_alb[$x]))
           {
           $template->assign_block_vars('zeile.bild', array('ABBRUCH' => '<!-- Abbruch -->'));
           break;
           }

           else
           {
           $template->assign_block_vars('zeile.bild', array('ABBRUCH' => '<!-- ok, zählt hoch -->'));
           }

        }                    /* ende for2 */

}        /* ende for 1 */

/* start pagination, keine schleife mehr offen  */

$board_config['topics_per_page'] = 24;

if ( $board_config['topics_per_page'] > 10 )
{
        $sql = "SELECT count(*) AS total
                FROM gallery_albums";
        $result = $db->sql_query($sql);

                if ( $total = $db->sql_fetchrow($result) )
        {
                $total_members = $total['total'];

                $pagination = generate_pagination("gallery_dir.$phpEx?gal_id=" . $gal_id . "", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';
        }
        $db->sql_freeresult($result);
}
else
{
        $pagination = '&nbsp;';
        $total_members = 24;
}

$template->assign_vars(array(
        'PAGINATION' => $pagination,
        'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor( $start / $board_config['topics_per_page'] ) + 1 ), ceil( $total_members / $board_config['topics_per_page'] )),

        'L_GOTO_PAGE' => $lang['Goto_page'])
);

/* end pagination */

$template->pparse('gallery_album');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
lg
Antworten

Zurück zu „phpBB 2.0: Styles, Templates und Grafiken“