Zadejte hledaný výraz...

Výpis galerie – kategorie

Jakub Fridrich
verified
rating uzivatele
(18 hodnocení)
22. 12. 2012 09:45:42
Zdravím.
Mám takovou to stránku pro výpis obrázků dle kritérií
A mám asi dva soubory, které se o to starají. Ovšem teď jsou ve všech 3 kategoriích stejné obrázky. Potřeboval bych poradit, jak to upravit tak, aby v každé kategorii byly odpovídající obrázky a aby PHP neházelo chybu
Část souboru 1: (Třikrát zkopírované to samé pod sebou)
foreach ( $featured as $r ) {
$i_ph_id = $r;
$i_ph_sv_id = $r;
$i_filename = $r;
$i_u_login = $r;
$i_views = $r;
$i_a_name = $r;
if ( $i_a_name == '-' ) $i_a_name_str = ''; else $i_a_name_str = ", album: $i_a_name";
$multiServerFullPath = multiServerFullPath( $i_ph_sv_id );
echo '
  • '
    .html::anchor( "image/$i_ph_id.html"
    , "Image $i_ph_id"
    , array( 'title' => lg('by', $lg)." $i_u_login (".lg('views', $lg).": $i_views)$i_a_name_str" )
    )
    .'
  • ';
    } // foreach
    ?>
    První část souboru 2:
    if ( isset($_GET) )
    if ( $_GET > 0 )
    if ( $_GET < 4 )
    $whatImgList = $_GET;
    else $whatImgList = 1;
    else $whatImgList = 1;
    else $whatImgList = 1;
    Druhá část souboru 2:
    switch ( $whatImgList ) {
    case 1: $fea = $main -> featured();
    break;
    case 2: $fea = $main -> latest();
    break;
    case 3: $fea = $main -> random();
    break;
    }
    Předem díky za rady
    22. 12. 2012 09:45:42
    https://webtrh.cz/diskuse/vypis-galerie-kategorie-2/#reply844774
    Tomáš Faldyna
    verified
    rating uzivatele
    (54 hodnocení)
    22. 12. 2012 10:32:38
    Urcite by to slo resit jednim souborem. navic kdyz stejny kod pouzivas 3x, udelej si na to funkci.
    Co se tyka problemu, vyres to napr. pomoci pole, do ktereho si budes ukladat jiz zobrazene obrazky. Pri vyberu z db pak jen overis jestli uz v poli jsou. Aby se ti to moc nebilo, vypis si nejdrive posledni, pak oblibene a nakonec nahodne kategorie.
    22. 12. 2012 10:32:38
    https://webtrh.cz/diskuse/vypis-galerie-kategorie-2/#reply844773
    Josef Vyhnánek
    verified
    rating uzivatele
    (6 hodnocení)
    22. 12. 2012 10:34:11
    Napsal Ajtak;885383
    ...
    if ( isset($_GET) )
    if ( $_GET > 0 )
    if ( $_GET < 4 )
    $whatImgList = $_GET;
    else $whatImgList = 1;
    else $whatImgList = 1;
    else $whatImgList = 1;
    Jseš si jistý že chyba není v tomhle, protože jsi nenapsal jesli se jedná o jednotný výpis (všechny 3 věci dohromady) nebo oddělený, kde by mělo význam si kontrolovat GET proměnné...
    Pokud by to bylo jednotné tak tenhle kód by vykonal pokaždé to samé...
    Napsal Ajtak;885383
    switch ( $whatImgList ) {
    case 1: $fea = $main -> featured();
    break;
    case 2: $fea = $main -> latest();
    break;
    case 3: $fea = $main -> random();
    break;
    }
    ----------------------------------------
    Potom mě ještě napadá si dyžtak onu GET proměnnou ošetřit funcí intval();
    Aby sis byl jistý na 100% že tam je číslo a nevrací ti to textový řetězec, viz:
    if ( isset($_GET) )
    if ( intval($_GET) > 0 )
    if ( intval($_GET) < 4 )
    $whatImgList = intval($_GET);
    else $whatImgList = 1;
    else $whatImgList = 1;
    else $whatImgList = 1;
    ----------------------------------------
    EDIT1:
    Napsal winexec;885389
    Urcite by to slo resit jednim souborem.
    Stím musím souhlasit
    ----------------------------------------
    EDIT2: Teď mě ještě napadlo elegantnější řešení tvého výpisu, ty if-y se mi zdají šílené
    $whatImgList = isset($_GET) ? intval($_GET) : 1;
    switch ( $whatImgList ) {
    case 2: $fea = $main -> latest();
    break;
    case 3: $fea = $main -> random();
    break;
    default: $fea = $main -> featured();
    }
    22. 12. 2012 10:34:11
    https://webtrh.cz/diskuse/vypis-galerie-kategorie-2/#reply844772
    Jakub Fridrich
    verified
    rating uzivatele
    (18 hodnocení)
    22. 12. 2012 10:46:19
    Upřesním.
    Původně to bylo na stránkách, kde se volala GETem proměnná whatimglist a byla vždy jen jedna volaná kategorie. Já bych to chtěl sloučit do jedné stránky.
    Tento skript jsme koupili, a jelikož je psaný v kohana frameworku, tak to nechám v těch dvouch souborech.
    Takže já vlastně chci na tu jednu stránku udělat, aby byly všechny 3 kategorie. Zkoušel jsem to mnohokrát již upravit, ale vždy to buď házelo chybu, nebo se nic nestalo
    22. 12. 2012 10:46:19
    https://webtrh.cz/diskuse/vypis-galerie-kategorie-2/#reply844771
    Josef Vyhnánek
    verified
    rating uzivatele
    (6 hodnocení)
    22. 12. 2012 11:09:46
    Napsal Ajtak;885393
    Upřesním.
    Původně to bylo na stránkách, kde se volala GETem proměnná whatimglist a byla vždy jen jedna volaná kategorie. Já bych to chtěl sloučit do jedné stránky.
    No jasně dělá to přesně to co má podle zdrojáku... nastaví všude jedničky a voala vypisuje všude to samé, to by ani to pole nezachránilo...
    Každopádně na toto zcela určitě by bylo vhodné napsat funkci s parametrem, jak doporučuje kolega výše. Nebo to lze obejít přes for cyklus, ve kterém by byl ten switch s výpisem.
    22. 12. 2012 11:09:46
    https://webtrh.cz/diskuse/vypis-galerie-kategorie-2/#reply844770
    Pro odpověď se přihlašte.
    Přihlásit