ilch Forum » Fehlersuche und Probleme » Quickjump Forum

Geschlossen
  1. #1
    User Pic
    jdiieka Mitglied
    Registriert seit
    28.01.2006
    Beiträge
    64
    Beitragswertungen
    0 Beitragspunkte
    Hi!
    Ich bin gerade dabei ein quickjump menü für das forum zu machen. ich kann die foren alle auflisten jedoch nicht alle gemeinsam in einem rollmenü darstellen. das skript mach für jenes forum ein eigenes menü. wie kann ich alle foren in einem menü bekommen?

    hier der code:
    <?
    defined ('main') or die ( 'no direct access' );
    
    $abf = 'SELECT * FROM prefix_forums ORDER BY id ASC';
    $erg = db_query($abf);
      
      while ($row = db_fetch_object($erg)) 
     		{ 	
    		$forums = $row->name;
    		echo'
    			<form name="QN">
      				<select name="quicknav" id="quicknav" onChange="MM_jumpMenu(parent,this,0)">
        			<option selected><a href="?downloads-show-'.$row->id.'">'.$forums.'</a></option></select>
    			</form>';
      		}
    ?>


    dank schon mal im voraus!
    Drink

    betroffene Homepage: http://www.sunway7.at/index.php?kalender][url]http://www.sunway7.at/index.php?kalender[/url]
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    jdiieka Mitglied
    Registriert seit
    28.01.2006
    Beiträge
    64
    Beitragswertungen
    0 Beitragspunkte
    Es funktioniert jetzt. aber leider funktioniert es nur als box.. wie kann ich die liste für showforum.htm ausgeben

    hier der aktuelle code:
    <?
    defined ('main') or die ( 'no direct access' );
    echo '	<form>
      			<select name="dest" size="1">';
    $erg = db_query ("SELECT * FROM prefix_forums ORDER BY id ASC");
    while ($row = db_fetch_object($erg)) 
    {	
    		$user = $row->name;
    		$fid = $row->id;
    		
    
    echo '   	 <option value="http://www.sunway7.at/index.php?forum-showtopics-'.$fid.'">'.$user.'</option>';
    
    }
    echo '  	  </select>
      <input type="button" value="go" onclick="pulldown(this.form);" />
    </form>';
    ?>

    dieser code ist in der index.htm drinnen (sonst funktioniert das pulldownmenü nicht):
    </style>
    <script language="JavaScript" type="text/javascript">
    <!--
    function pulldown(form)
    {
    	var mypull = form.dest.selectedIndex;
    
    	self.location.href = form.dest.options[mypull].value;
    }
    //-->
    </script>


    Wie kann ich das in die showforum.htm {explode} en? gibts da eine andere lösung? wie würdet ihr das machen?
    Drink
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    jdiieka Mitglied
    Registriert seit
    28.01.2006
    Beiträge
    64
    Beitragswertungen
    0 Beitragspunkte
    hat niemand eine idee?
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    s_down Mitglied
    Registriert seit
    11.04.2005
    Beiträge
    1.194
    Beitragswertungen
    0 Beitragspunkte
    Ich würde es so versuchen (weiss nicht ob das mit dem Template so stimmt musst halt dawww.ilch.de/doku-entwickler.html#tpl nach gucken.):

    <?
    defined ('main') or die ( 'no direct access' );
    $ausgabe =  '    <form>
                  <select name="dest" size="1">';
    $erg = db_query ("SELECT * FROM prefix_forums ORDER BY id ASC");
    while ($row = db_fetch_object($erg)) 
    {    
            $user = $row->name;
            $fid = $row->id;
            
    
    $ausgabe . = '        <option value="http://www.sunway7.at/index.php?forum-showtopics-'.$fid.'">'.$user.'</option>';
    
    }
    $ausgabe .= '        </select>
      <input type="button" value="go" onclick="pulldown(this.form);" />
    </form>';
    
     $tpl->set_out('dropdown',$ausgabe,0);
    
    ?>
    Probleme mit dem installieren?
    www.ilch.de/doku-install105.html
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    jdiieka Mitglied
    Registriert seit
    28.01.2006
    Beiträge
    64
    Beitragswertungen
    0 Beitragspunkte
    das überschreibt die letzte zuweisung der "$ausgabe" die anderen ausgaben.. aber der ansatz ist super. danke! werde da weiterforschen!
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    jdiieka Mitglied
    Registriert seit
    28.01.2006
    Beiträge
    64
    Beitragswertungen
    0 Beitragspunkte
    so gibt er es richtig aus, bis auf den array.;)
    $ausgabe1 =  '<form> <span class="txtn">Quicknavi</span><br>
                  <select name="dest" size="1">'; 
    $erg = db_query ("SELECT * FROM prefix_forums ORDER BY id ASC"); 
    while ($row = db_fetch_object($erg))  
    {     
            $user = $row->name; 
            $fid = $row->id; 
             
    
    $ausgabe2 = '	<option>---- wähle ein Forum ----</option>     
    				<option value="http://www.sunway7.at/index.php?forum-showtopics-'.$fid.'">'.$user.'</option>'; 
    
    } 
    $ausgabe3 = '        </select> 
      <input type="button" value="go" onclick="pulldown(this.form);" /> 
    </form>'; 
    
    $ausgabe = ''.$ausgabe1.' '.$ausgabe2.' '.$ausgabe3.'';
    
    $tpl->set_out('dropdown',$ausgabe,3);


    Jetzt hab ich zwar das pulldown menü aber es steht nur das letzte forum zur auswahl.
    ich weis nicht mehr weiter... bitte um hilfe(D)

    danke im voraus!(B)
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Wizzard26 Mitglied
    Registriert seit
    05.03.2009
    Beiträge
    258
    Beitragswertungen
    33 Beitragspunkte
    Moin moin,
    bevor ich hier erschlagen werde, ja Ich habe gesehen wie alt der Thread ist, will ihn aber trotzdem nochmal aus der versenkung holen.
    Wofür nen neuen aufmachen wenns die Frage schon gibt.

    So eine funktion wie sie hier angefangen worden ist such ich schon die ganze Zeit.
    Ein Dropdown sprung menü fürs Forum , ähnlich wie man es halt vom WBB kennt.
    mit der möglichkeit auf 2 ebenen auszuwählen.

    - Auswahl -
    -Forum Kategorie(Showcat)
    --Untergeordnete Foren(Showtopic)

    Hoffe mir kann da jemand weiterhelfen, werd da leider einfach nicht schlau raus.

    Greetz Wizz
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Treicio gelöschter User
    Ist doch nichts großes :-)
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Wizzard26 Mitglied
    Registriert seit
    05.03.2009
    Beiträge
    258
    Beitragswertungen
    33 Beitragspunkte
    ZitatZitat geschrieben von Treicio

    Ist doch nichts großes :-)


    Mag sein bringt mich aber nicht weiter zwinker
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Treicio gelöschter User
    Ne SelectListe ist wohl nichts großes :-)
    Und die Auswahlmöglichkeiten per PHP zu machen ist 5 Minuten Sache ^^
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Wizzard26 Mitglied
    Registriert seit
    05.03.2009
    Beiträge
    258
    Beitragswertungen
    33 Beitragspunkte
    Und wenn wir noch länger darüber quatschen wie einfach doch sein würde, ändert das nix drann das ich auf dem schlauch stehe. Statisch als html sicherlich da bekomm ich das auch hin, aber php ist nunmal für mich noch immer ne Barriere wo ich nicht weiter komm.
    Hab mich auch schon versucht da mit diversen Foren und themen die sich mit ähnlichem beschäftigen reinzulesen, aber irgendwie nach 20 verschiedenen anleitungen verstehe ich noch weniger als vorher schon.
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Treicio gelöschter User
    ^^
    Also ich fahr jetzt gleich zwar weg aber hier mal n tipp:

    $ausgabe2 = '   <option>---- wähle ein Forum ----</option>    
    <option value="http://www.sunway7.at/index.php?forum-showtopics-'.$fid.'">'.$user.'</option>';


    Er erweitert die Variable nicht sondern macht sie immer neu.
    Du musst anstatt
    $ausgabe2 = ...
    das so machen:
     $ausgabe2.= ...


    und das
    $ausgabe2 = '   <option>---- wähle ein Forum ----</option>
    kommt dann über die while schleife :-)
    Weil sonst steht es da für jedes Forum einmal. Das heißt bei 3 Foren steht da 3 mal "wähle ein Forum"

    Hoffe ist so verständlich ^^


    Zuletzt modifiziert von Treicio am 19.04.2011 - 10:27:27
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    Eine interessante Sache, daher habe ich mich heute morgen spontan entschlossen da was zu schreiben.
    Der Ansatz, den ihr verfolgt ist nicht ganz richtig, da ihr erstens keine Templates nutzt, zweitens nur Foren und nicht Kategorien ausgebt und drittens auch private Foren angezeigt werden.

    Ich komme zu folgendem Ergebnis:
    include/contents/forum/show_posts.php
    Unter Zeile 84
    [...]
    	$row['posts']  = ($row['posts']?'<br />Posts: '.$row['posts']:'').'<br />';
    	$tpl->set_ar_out($row,1);
    
      $i++;
    }

    folgendes einfügen:
    // Quickjump start
    $sql = "SELECT
            a.id as forum_id, a.name as forum,
            b.id as cat_id, b.name as cats
            FROM prefix_forums a
            LEFT JOIN prefix_forumcats b on b.id = a.cid
            LEFT JOIN prefix_groupusers vg ON vg.uid = {$_SESSION['authid']} AND vg.gid = a.view
            WHERE (({$_SESSION['authright']} <= a.view AND a.view < 1)
                OR vg.fid IS NOT NULL)
                AND b.cid = 0";
    
    $erg = db_query($sql);
    $liste = "";
    
    while($row = db_fetch_object($erg)) {
        $fid == $row->forum_id ? $aktiv = "selected" : $aktiv = "";
        if($akt_cat != $row->cat_id) {
            $liste .= $tpl->list_get('dropdown', array($row->cat_id, $row->cats, "cat"));
            $liste .= $tpl->list_get('dropdown', array($row->forum_id, "- " . $row->forum, "forum", $aktiv));
        } else {
            $liste .= $tpl->list_get('dropdown', array($row->forum_id, "- " . $row->forum, "forum", $aktiv));
        }
        $akt_cat = $row->cat_id;
    }
    // Quickjump ende


    Zeile 111 (ursprünglich 86)
    $tpl->set_ar_out( array ( 'SITELINK' => $MPL, 'ANTWORTEN' => $antworten ) , 2 );

    durch
    $tpl->set_ar_out( array ( 'SITELINK' => $MPL, 'ANTWORTEN' => $antworten, 'dropdown' => $liste ) , 2 );

    ersetzen.

    include/templates/forum/showpost.htm
    Unter Zeile 39
    </table>

    folgendes einfügen:
    <div>
        <form method="post" action="index.php" name="dropdown">
            <select name="auswahl" onchange="change_action(); this.form.submit();">
            {_list_dropdown@<option value="%1" id="%3" %4>%2</option>}
            </select>
        </form>
    </div>


    Unter Zeile 67 (ursprünglich 60)
    }

    folgendes einfügen:
       function change_action() {
            auswahl = document.dropdown.auswahl;
            form = document.dropdown;
            for (i = 0; i < auswahl.length; ++i) {
                if (auswahl.options[i].selected == true) {
                    if(auswahl.options[i].id == "cat") {
                        form.action = "index.php?forum-showcat-" + auswahl.options[i].value;
                        return;
                    } else {
                        form.action = "index.php?forum-showtopics-" + auswahl.options[i].value;
                        return;
                    }
                }
            }
        }


    Ist getestet und sollte funktionieren. Ich hoffe, dass das das ist, was du suchst zwinker

    Edit: Das ist jetzt exemplarisch für die showposts. Bei showtopics/showcat sollte das ähnlich aussehen.


    Zuletzt modifiziert von kdl am 19.04.2011 - 14:58:05
    .
    6 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Wizzard26 Mitglied
    Registriert seit
    05.03.2009
    Beiträge
    258
    Beitragswertungen
    33 Beitragspunkte
    Habs gerade mal eingebaut und probiert funktioniert aller erste sahne.
    Recht Herzlichen dank dafür, dafür haste dir noch viele Yes verdient zwinker

    Vll sollte das Thema mal einer der Mods auch in der Doku verlinken, kann mir denken das es noch vielen anderen zusagen würde.

    Greetz Wizz
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    <== hat endlich seinen 2. grünen Balken bekommen xD

    Danke zwinker
    .
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Flay123 Mitglied
    Registriert seit
    28.09.2010
    Beiträge
    32
    Beitragswertungen
    5 Beitragspunkte
    Hey, coole Sache lächeln

    Kann man dies auch direkt für die show-topic.php nutzen? Sodass der Quickjump auch in der Themenübersicht zu sehen ist?

    lg

    EDIT: ohh da hab ich wohl was überlesen

    ZitatZitat
    Edit: Das ist jetzt exemplarisch für die showposts. Bei showtopics/showcat sollte das ähnlich aussehen.



    Zuletzt modifiziert von Flay123 am 17.06.2011 - 17:22:17
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    Jo, habe es da aber nicht getestet. Melde dich einfach, wenn es Probleme geben sollte.
    .
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Tr3icio gelöschter User
    Dürfte eig kein problem ist, da es unabhängig von anderen Variablen, etc. ist
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    Flay123 Mitglied
    Registriert seit
    28.09.2010
    Beiträge
    32
    Beitragswertungen
    5 Beitragspunkte
    Funktioniert zwinker

    Tpl musste so angepasst werden für die show_topics.php

        $tpl->set_ar_out( array ( 'dropdown' => $liste ) , 1 );
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Chester Mitglied
    Registriert seit
    17.02.2009
    Beiträge
    753
    Beitragswertungen
    19 Beitragspunkte
    kann man sowas mal in action sehen? kann mir darunter leider nichts vorstellen :/
    1 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    Tr3icio gelöschter User
    Beispiel: www.woltlab.com/forum/individuelle-anpassung-und-pluginentwicklung/board119-wie-mache-ich-was/?s=5d9ff5e259c3220970d5aded92e2dceaeb1eea5b

    Scroll mal bis ganz unten und dann unten links unter der Statistik sieht man eine Auswahlliste. Wenn du dort was anderes wählst und auf den pfeil klickst kommst du in ein anderes Forum
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    Beispiele wären die Datenbank-Auswahl (Dropdown-Menü ) bei PhpMyAdmin oder www.php.de/php-einsteiger/ ganz unten rechts ("Gehe zu" ).

    zu langsam xD


    Zuletzt modifiziert von kdl am 17.06.2011 - 21:45:52
    .
    0 Mitglieder finden den Beitrag gut.
  23. #23
    User Pic
    Chester Mitglied
    Registriert seit
    17.02.2009
    Beiträge
    753
    Beitragswertungen
    19 Beitragspunkte
    gut. na wenn man das bischen mit java verschönert is es sogar ganz hilfreich. krigste mal nen daumen hoch für die arbeit lachen
    0 Mitglieder finden den Beitrag gut.
  24. #24
    User Pic
    Tr3icio gelöschter User
    Mit Java? Wozu? ^^
    Reicht doch normal. Sonst kann man auch ne scöne Box nehmen wie es in jQuery schon gibt: jqueryui.com/demos/autocomplete/#combobox ^^ Dafür nimmt man dann aber JavaScript und kein Java ( falls du javaScript meintest = Java und JavaScript sind nicht im geringsten das gleiche! )
    0 Mitglieder finden den Beitrag gut.
  25. #25
    User Pic
    Chester Mitglied
    Registriert seit
    17.02.2009
    Beiträge
    753
    Beitragswertungen
    19 Beitragspunkte
    is schon bischen egal aber danke für den hinweis
    0 Mitglieder finden den Beitrag gut.
  26. #26
    User Pic
    Siggi Entwickler
    Registriert seit
    08.02.2007
    Beiträge
    6.253
    Beitragswertungen
    281 Beitragspunkte
    wie muss man das hier mit der show_topics.php, show_topics.htm, show_cat.php und show_cat.htm machen?

    Gruesse
    Wie poste ich falsch?
    Fahrschulplaner.info digitialisiert die Fahrstunden Ihrer Farhschule
    0 Mitglieder finden den Beitrag gut.
  27. #27
    User Pic
    Siggi Entwickler
    Registriert seit
    08.02.2007
    Beiträge
    6.253
    Beitragswertungen
    281 Beitragspunkte
    kdl nicht mehr Aktiv oder überlesen? zunge
    Wie poste ich falsch?
    Fahrschulplaner.info digitialisiert die Fahrstunden Ihrer Farhschule
    0 Mitglieder finden den Beitrag gut.
  28. #28
    User Pic
    Tr3icio gelöschter User
    Versuchs doch mal selber :-)
    Was denkst du wie man es überhaupt lernt? die beste Möglichkeit ist zu versuchen zu verstehen warum er etwas wie und wo macht :-)
    0 Mitglieder finden den Beitrag gut.
  29. #29
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    show_topic

    show_topic.php
    $tpl->out(2);

    ersetzten durch
    // Quickjump start
    $sql = "SELECT
           a.id as forum_id, a.name as forum,
           b.id as cat_id, b.name as cats
           FROM prefix_forums a
           LEFT JOIN prefix_forumcats b on b.id = a.cid
           LEFT JOIN prefix_groupusers vg ON vg.uid = {$_SESSION['authid']} AND vg.gid = a.view
           WHERE (({$_SESSION['authright']} <= a.view AND a.view < 1)
               OR vg.fid IS NOT NULL)
               AND b.cid = 0";
     
    $erg = db_query($sql);
    $liste = "";
     
    while($row = db_fetch_object($erg)) {
        $fid == $row->forum_id ? $aktiv = "selected" : $aktiv = "";
        if($akt_cat != $row->cat_id) {
            $liste .= $tpl->list_get('dropdown', array($row->cat_id, $row->cats, "cat"));
            $liste .= $tpl->list_get('dropdown', array($row->forum_id, "- " . $row->forum, "forum", $aktiv));
        } else {
            $liste .= $tpl->list_get('dropdown', array($row->forum_id, "- " . $row->forum, "forum", $aktiv));
        }
        $akt_cat = $row->cat_id;
    }
    // Quickjump ende
    $tpl->set_ar_out( array ( 'dropdown' => $liste ) , 2 );


    showtopic.htm
    {EXPLODE}
    <a href="index.php?forum-editforum-{id}">{_lang_editforum}</a>

    ersetzten durch
    <div>
        <form method="post" action="index.php" name="dropdown">
            <select name="auswahl" onchange="change_action(); this.form.submit();">
            {_list_dropdown@<option value="%1" id="%3" %4>%2</option>}
            </select>
        </form>
    </div>
    
    {EXPLODE}
    <a href="index.php?forum-editforum-{id}">{_lang_editforum}</a>	
    <script language="JavaScript" type="text/javascript">
    function change_action() {
            auswahl = document.dropdown.auswahl;
            form = document.dropdown;
            for (i = 0; i < auswahl.length; ++i) {
                if (auswahl.options[i].selected == true) {
                    if(auswahl.options[i].id == "cat") {
                        form.action = "index.php?forum-showcat-" + auswahl.options[i].value;
                        return;
                    } else {
                        form.action = "index.php?forum-showtopics-" + auswahl.options[i].value;
                        return;
                    }
                }
            }
        }
    </script>


    show_cat

    show_cat.php

    $tpl->out(4);

    ersetzen durch
    // Quickjump start
    $sql = "SELECT
           a.id as forum_id, a.name as forum,
           b.id as cat_id, b.name as cats
           FROM prefix_forums a
           LEFT JOIN prefix_forumcats b on b.id = a.cid
           LEFT JOIN prefix_groupusers vg ON vg.uid = {$_SESSION['authid']} AND vg.gid = a.view
           WHERE (({$_SESSION['authright']} <= a.view AND a.view < 1)
               OR vg.fid IS NOT NULL)
               AND b.cid = 0";
     
    $erg = db_query($sql);
    $liste = "";
     
    while($row = db_fetch_object($erg)) {
        $fid == $row->forum_id ? $aktiv = "selected" : $aktiv = "";
        if($akt_cat != $row->cat_id) {
            $liste .= $tpl->list_get('dropdown', array($row->cat_id, $row->cats, "cat"));
            $liste .= $tpl->list_get('dropdown', array($row->forum_id, "- " . $row->forum, "forum", $aktiv));
        } else {
            $liste .= $tpl->list_get('dropdown', array($row->forum_id, "- " . $row->forum, "forum", $aktiv));
        }
        $akt_cat = $row->cat_id;
    }
    // Quickjump ende
    $tpl->set_ar_out( array ( 'dropdown' => $liste ) , 4 );


    show_cat.htm
    <div>
        <form method="post" action="index.php" name="dropdown">
            <select name="auswahl" onchange="change_action(); this.form.submit();">
            {_list_dropdown@<option value="%1" id="%3" %4>%2</option>}
            </select>
        </form>
    </div>
    <script language="JavaScript" type="text/javascript">
    function change_action() {
            auswahl = document.dropdown.auswahl;
            form = document.dropdown;
            for (i = 0; i < auswahl.length; ++i) {
                if (auswahl.options[i].selected == true) {
                    if(auswahl.options[i].id == "cat") {
                        form.action = "index.php?forum-showcat-" + auswahl.options[i].value;
                        return;
                    } else {
                        form.action = "index.php?forum-showtopics-" + auswahl.options[i].value;
                        return;
                    }
                }
            }
        }
    </script>

    ganz unten einfügen.

    Bei modifizierten Dateien kann es anders aussehen.


    Zuletzt modifiziert von kdl am 13.08.2011 - 17:11:05
    .
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten