ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » Downloads show kommentar

Geschlossen
  1. #1
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Ich nutze die Kommentar Funktion für den Download Bereich

    Ich habe alles übernommen wie es hier steht.
    externer Link

    Jedoch würde ich aber gerne das nur eingeloggte Komms schreiben dürfen keine gäste wie setzte ich dies um?
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    # kommentar add
    if ((loggedin() AND chk_antispam ('downloads')) AND !empty($_POST['name']) AND !empty($_POST['text']) ) {
    $_POST['text'] = escape($_POST['text'],'textarea');
    $_POST['name'] = escape($_POST['name'],'string');
    db_query("INSERT INTO `prefix_koms` VALUES ('',".$fid.",'dloads','".$_POST['name']."','".$_POST['text']."')");
    }


    am einfachsten so
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Ja aber so zeigt er mir ja immer noch das eingabe feld an.

    <form action="index.php?downloads-show-{id}" method="POST">
    <fieldset>
    <legend>{_lang_writecomment}</legend>
    <input type="text" name="name" value="{uname}" /> <input type="submit" value="{_lang_enter}"><br />
    <textarea cols="50" rows="2" name="text"></textarea><br />
    {ANTISPAM}
    </fieldset>
    </form>


    Er soll es aber nur anzeigen wenn man eingelogt ist ansonsten halt else bitte einlogen
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    Davon war ja nicht die Rede...

    ZitatZitat geschrieben von Siggi
    Jedoch würde ich aber gerne das nur eingeloggte Komms schreiben dürfen keine gäste wie setzte ich dies um?



    {_if_SESSION_AUTHRIGHT<='0'}
    <table width="100%" class="border" border="0" cellspacing="1" cellpadding="3">
    <tr>
    <th class="Cdark">{_lang_desc}</th>
    </tr>
    <td class="Cnorm">{ssurl}{descl}</td>
    </tr>
    <tr>
    <td class="Cnorm">
    <form action="index.php?downloads-show-{id}" method="POST">
    <fieldset>
    <legend>{_lang_writecomment}</legend>
    <input type="text" name="name" value="{uname}" /> <input type="submit" value="{_lang_enter}"><br />
    <textarea cols="50" rows="2" name="text"></textarea><br />
    {ANTISPAM}
    </fieldset>
    </form>
    </td>
    </tr>
    <tr>
    <td class="Cnorm">
    {EXPLODE}
    {EXPLODE}
    <span class="Cmite" style="width:100%;display:block;"><span style="display:block;padding:2px 2px 2px 5px;"># <b>{zahl}</b> von {name}</span> </span>
    <span class="Cdark" style="width:100%;display:block;"><span style="display:block;padding:4px 4px 4px 6px;">{text}</span> </span>
    <br />
    {EXPLODE}
    </td>
    </tr>
     
    </table>
    {_else_}
    <table width="100%" class="border" border="0" cellspacing="1" cellpadding="3">
    <tr>
    <th class="Cdark">{_lang_desc}</th>
    </tr>
    <td class="Cnorm">{ssurl}{descl}</td>
    </tr>
    <tr>
    <td class="Cnorm">
    {EXPLODE}
    {EXPLODE}
    <span class="Cmite" style="width:100%;display:block;"><span style="display:block;padding:2px 2px 2px 5px;"># <b>{zahl}</b> von {name}</span> </span>
    <span class="Cdark" style="width:100%;display:block;"><span style="display:block;padding:4px 4px 4px 6px;">{text}</span> </span>
    <br />
    {EXPLODE}
    </td>
    </tr>
     
    </table>
    </table>
    {/_endif}
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Habe ich mich wohl falsch ausgedrückt zwinker

    Dies funktioniert nicht da gibt er mir {_if_SESSION_AUTHRIGHT<='0'} genauso aus wie es in der htm geschrieben wird
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    ZitatZitat geschrieben von Siggi

    Habe ich mich wohl falsch ausgedrückt zwinker

    Dies funktioniert nicht da gibt er mir {_if_SESSION_AUTHRIGHT<=1} genauso aus wie es in der htm geschrieben wird


    Sorry mal so versuchen
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Das geht auch nicht.

    Denke das es vllt auch nich an dein Code liegt oder kA er ändert dies ja nicht in php er schreibt es ganz normal so hin
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    Dann aktualisiere mal deine class/tpl.php

    bzw merge sie mit winmerge
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    ist alles gleich außer das in meiner noch
    $this->keys['__BBCodeButtons__'] = getBBCodeButtons(); //BBCode2.0 Buttons

    steht
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Ah hab es und zwar lag es an der 1 denke bzw so gehts zumindest nun -1 ^^

    bei ilch gehen die rechte ja ins minus ^^

    {_if_{SESSION_AUTHRIGHT}<='-1'}
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    jo guten morgen *brett vor den kopf klatsch nach müde kommt halt doof
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    lächeln

    hab noch etwas ich poste es einfach mal hier.

    Ich würde gerne mittels <select><option> methode die Downloads sortieren.
    Ich habe auch etwas was funktioniert bin damit aber nicht zufrieden da er das aktuell ausgewaehlte am ende nicht in der select box als selected="selected" auswähl

    Dies ist auch ohne javascript und denke daran wirds auch wohl irgendwie liegen?
    <select size="1" name="jumpit" onchange="document.location.href=this.value"> 
    <option value="index.php?downloads-{cid}-name" selected="selected">Name</option>
    <option value="index.php?downloads-{cid}-add">Eingetragen</option>
    <option value="index.php?downloads-{cid}-last">Zuletzt aktualisiert</option>
    <option value="index.php?downloads-{cid}-downs">Downloads</option>
    <option value="index.php?downloads-{cid}-hit">Hits</option>
    </select>


    Wer ne bessere idee?
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    ZitatZitat geschrieben von Dokumentation

    Beispiel mit Liste
    Jetzt noch ein letztes Beispiel mit einer Liste in einem Template das ist wirklich auch sehr leicht.

    Eine Liste aller Member
    Diese Funktion gibt es erst in der neusten {version} Version.
    <select name="member">
    {_list_alleMember@<option value="%1">%2</option>}
    </select>

    so jetzt also alle Member dieses Clans ausgeben in der Liste hat es 2 Platzhalter %1 und %2... und die Liste heißt "alleMember"

    $tpl->set('version', '1.0.5');
    .... jetzt die Liste generieren

    $abf = 'SELECT * FROM prefix_users WHERE recht = -3'; // -3 ist Member recht

    $erg = db_query($abf);
    while($row = db_fetch_assoc($erg)) {
    $liste .= $tpl->list_get( 'alleMember', array ( $row['id'], $row['name']));
    }

    $tpl->set('alleMember', $liste );
    $tpl->out(0);

    so damit wären alle Member ausgegeben in einer select box... aber was genau ist da passiert zunge
    also zuerst mal wird der Platzhalter Version gesetzt das kennen wir ja schon

    dann wird eine Abfrage gemacht und zwar alle Member aus der Datenbank, jetzt holen wir die Liste alleMember und übergeben ein Array der Wert der in diesem Array an 1 stelle Steht ersetzt den Platzhalter %1 in der Liste der Wert an 2. Stelle den 2. Platzhalter usw.

    dann wird die Liste 'alleMember' noch gesetzt und ausgegeben.

    warum gibt es denn den Platzhalter alleMember in dem Template wenn der doch gar nicht gesetzt wurde?
    ja stimmt, es wird erstmal die Liste eingelesen und in der Klasse gespeichert und dann wird dort wo die Liste stand der Platzhalter eingetragen ,so dass man ihn verwenden kann.
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    hm das versteh ich nicht so ganz.

    Ich möchte ja nix aus der db auslesen sondern so haben wie der code oben steht nur das er mir das aktuell ausgewählte am ende selected="selected" nehm soll sonst steht immer Name oben

    Funktionieren tut es nur wie gesagt es fehlt diese selected sache
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    Rock@wulf Hall Of Fame
    Registriert seit
    03.06.2004
    Beiträge
    3.282
    Beitragswertungen
    239 Beitragspunkte
    Ok du willst nix aus der Datenbak auslesen ?!

    Also jede Kategorie mit der Hand in die Template schreiben?

    Ich glaube doch eher nicht oder?

    Also muss man sich so etwas zusammenbauen:

    $DownloadKatSelect = dblistee($_POST['DownloadKatSelected']],"SELECT id,name FROM prefix_downcats ORDER BY id ASC");
    echo '<select name="DownloadKatSelected">'.$DownloadKatSelect.'</select>';
    Meine Postings repräsentieren meine Meinung wenn nicht anders gekennzeichnet.
    MFG Rock@wulf
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    hm also ich habe folgendes
    downloads.php
        # sortierung festlegen
        $sortierung = 'name ASC';
    
        switch ($menu->get(3)) {
          case 'name' : $sortierung = 'name ASC'; break;
          case 'downs' : $sortierung = 'downs DESC'; break;
          case 'news' : $sortierung = 'time DESC'; break;
          case 'last' : $sortierung = '`update` DESC'; break;
          case 'add' : $sortierung = 'time DESC'; break;
          case 'hit' : $sortierung = 'hits DESC'; break;
        }
    
      $limit = '16';  // Limit
      $page = ($menu->getA(2) == 'p' ? $menu->getE(2) : 1); 
      $sort = ($menu->getA(3) == '' ? $menu->getE(3) : 1); 
      $MPL = db_make_sites ($page , "WHERE cat = ".$cid."" , $limit , "?downloads-".$cid."" , 'downloads' ); 
      $anfang = ($page - 1) * $limit;
      $erg = db_query("select id,name,version,surl,`desc`,downs,hits,DATE_FORMAT(time,'%d.%m.%Y') as datum,DATE_FORMAT(`update`,'%d.%m.%Y') as `update` from prefix_downloads WHERE cat = ".$cid." ORDER BY ".$sortierung." LIMIT ".$anfang.",".$limit);


    downloads.htm
    <b>Sortieren:</b>
    <select size="1" name="jumpit" onchange="document.location.href=this.value"> 
    <option value="index.php?downloads-{cid}-p1-name" selected="selected">Name</option>
    <option value="index.php?downloads-{cid}-p1-add">Eingetragen</option>
    <option value="index.php?downloads-{cid}-p1-last">Zuletzt aktualisiert</option>
    <option value="index.php?downloads-{cid}-p1-downs">Downloads</option>
    <option value="index.php?downloads-{cid}-p1-hit">Hits</option>
    </select>


    und das alles funktioniert ja nur beim auswählen macht er mir das was ich gerade in der <option> ausgewählt habe nicht zu selected="selected" damit es ja dann in der auswahl steht und nicht wie es standart ist wenn man downloads aufruft name

    Erkläre ich es falsch? reden wir aneinander vorbei?


    Zuletzt modifiziert von Siggi am 29.01.2013 - 16:22:39
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Naja da kommst du, wenn du es nicht übertreiben willst, aber nicht an der Generierung der Optionen mit php vorbei.

    $sortOptions = array(
        'name' => 'Name',
        'add' => 'Eingetragen'
    );
    
    $preselected = $menu->get(3);
    if (empty($preselected) || !isset($sortOptions[$preselected])) {
        $preselected = 'name';
    }
    
    //sql sort auswahl auswahl
    
    $selectOptions = arlistee($preselected, $sortOptions);
    
    $tpl->set('selectOptions', $selectOptions);


    <select onchange="window.location.href = 'index.php?downloads-{cid}-p1-' + value;">{selectOptions}</select>


    Dabei aber auch der Hinweis, dass du nicht Blättern kannst, da p?? immer angehangen wird und es so dazwischen wäre, also die Multipages ohne die Sortierfunktion erstellt werden.

    Möglichkeit hier, wäre die Sortierung vor Page zu verschieben, dann musst du es noch bei db_make_sites mit angeben und bei get die Zahlen ändern, ist aber eigentlich schnell gemacht.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    hm ja genau das wäre mein naechstes problem mit den seiten sodass diese ja dann auch sortiert bleibt also p2-last, p3-last etc

    hm dafür hatte ich ja schon gedacht
    $sort = ($menu->getA(3) == '' ? $menu->getE(3) : 1);

    Es ist ja downloads-11-p2-last

    dabei steht die 11 doch für get1, p2 die seiten für get2 und das sortieren doch für get3 oder nich?

    id-page-sort
    Hab ich die technik doch noch nicht ganz richtig verstanden?


    Zuletzt modifiziert von Siggi am 29.01.2013 - 18:11:12
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Doch hast du, aber bei der db_make_sites Funktion gibt man einen Link an, an den -p?? gehangen wird, ohne Änderung an der Funktion, kannst du dort nicht noch die Sortierung anhängen.

    Deswegen wäre es sinnvoll, statt ?downloads-11-p2-last einfach downloads-11-last-p2 zu machen.

    Bei der db_make_sites Funktion für den Link dann halt '?downloads-' . $cid . '-' . $preselected für die Linkgenerierung verwenden.

    Dann für Sortieroption get(2) und für $page getA/E(3) verwenden, ist wie gesagt eigentlich nicht sonderlich kompliziert.

    Mein Code ist auch schon so geschrieben, dass es auch bei keiner Angabe eine Standardsortierung gibt.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Öhm dann habe ich es nun aktuell glaub doppelt?

    So hab ich es nun aber so funktioniert es nicht zumindest nicht mit den blättern von seiten.
        # sortierung festlegen
    $sortOptions = array(
        'name' => 'Name',
        'add' => 'Eingetragen',
        'last' => 'Zuletzt aktualisiert',
        'downs' => 'Downloads',
        'hit' => 'Hits'
    );
     
    $preselected = $menu->get(3);
    if (empty($preselected) || !isset($sortOptions[$preselected])) {
        $preselected = 'name';
    }
     
    //sql sort auswahl auswahl
     
    $selectOptions = arlistee($preselected, $sortOptions);
    $tpl->set('selectOptions', $selectOptions);	
    	
    	
        $sortierung = 'name ASC';
    
        switch ($menu->get(3)) {
          case 'name' : $sortierung = 'name ASC'; break;
          case 'downs' : $sortierung = 'downs DESC'; break;
          case 'news' : $sortierung = 'time DESC'; break;
          case 'last' : $sortierung = '`update` DESC'; break;
          case 'add' : $sortierung = 'time DESC'; break;
          case 'hit' : $sortierung = 'hits DESC'; break;
        }
    
      $limit = '16';  // Limit
      $page = ($menu->getA(3) == 'p' ? $menu->getE(3) : 1);
      $sort = ($menu->getA(2) == '' ? $menu->getE(2) : 1);
      $MPL = db_make_sites ($page , "WHERE cat = ".$cid."" , $limit , "?downloads-".$cid."-".$preselected."" , 'downloads' ); 
      $anfang = ($page - 1) * $limit;
      $erg = db_query("select id,name,version,surl,`desc`,downs,hits,DATE_FORMAT(time,'%d.%m.%Y') as datum,DATE_FORMAT(`update`,'%d.%m.%Y') as `update` from prefix_downloads WHERE cat = ".$cid." ORDER BY ".$sortierung." LIMIT ".$anfang.",".$limit);


    und muss ich nich dann den auswahl link auch ändern zu id-sort-seite anstatt id-seite-sort?
    <select onchange="window.location.href = 'index.php?downloads-{cid}-p1-' + value;">{selectOptions}</select>
    0 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    // sortierung festlegen
    $sortOptions = array(
        'name' => 'Name',
        'add' => 'Eingetragen',
        'last' => 'Zuletzt aktualisiert',
        'downs' => 'Downloads',
        'hit' => 'Hits'
    );
    
    $preselected = $menu->get(2);
    if (empty($preselected) || !isset($sortOptions[$preselected])) {
        $preselected = 'name';
    }
    
    $selectOptions = arlistee($preselected, $sortOptions);
    $tpl->set('selectOptions', $selectOptions);
    
    switch ($preselected) {
        case 'name' : $sortierung = 'name ASC';
            break;
        case 'downs' : $sortierung = 'downs DESC';
            break;
        case 'news' : $sortierung = 'time DESC';
            break;
        case 'last' : $sortierung = '`update` DESC';
            break;
        case 'add' : $sortierung = 'time DESC';
            break;
        case 'hit' : $sortierung = 'hits DESC';
            break;
    }
    
    $limit = '16';  // Limit
    $page = ($menu->getA(3) == 'p' ? $menu->getE(3) : 1);
    $MPL = db_make_sites($page, "WHERE cat = " . $cid . "", $limit, "?downloads-" . $cid . "-" . $preselected . "", 'downloads');
    $anfang = ($page - 1) * $limit;
    $erg = db_query("select id,name,version,surl,`desc`,downs,hits,DATE_FORMAT(time,'%d.%m.%Y') as datum,DATE_FORMAT(`update`,'%d.%m.%Y') as `update` from prefix_downloads WHERE cat = " . $cid . " ORDER BY " . $sortierung . " LIMIT " . $anfang . "," . $limit);


    Und ja, du müsstest den Link dann natürlich auch anpassen, auf
    onchange="window.location.href = 'index.php?downloads-{cid}-' + value;"
    Die Seite kann man dann eigentlich weglassen, da wenn man die Sortierung ändert, das beibehalten der aktuellen Seite wenig Sinn macht.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    lächeln alles Supper Danke
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten