Artikelreihenfolge umdrehen beim Dropdown Menü

Gesperrt
stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von stefkey »

Hallo zusammen,

ich würde gerne die Ausgabe derArtikel umkehren. In dem Modul wird ein Dropdownmenü mit allen Artikeln einer Kategorie erzeugt. Dabei wird wohl nach idart(lang) sortiert. Kann man die Ausgabe einfach umdrehen? (ohne Sortierschlüsselnutzung wenn möglich)

Wäre klasse wenn mir hier jemand den Code ergänzen könnte, ich hab leider zu wenig Ahnung von php.

Grüße,
stekfey


...
...
// get articles
$is_empty=1;
while ($db->next_record()) {

$articleID = $db->f("idartlang");
$linkID = $db->f("idart");
$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID");
$headline = $db->f("title");


// HTML template for one element
echo"<OPTION VALUE=$link>$headline</OPTION>";

unset($headline);
$is_empty=0;
} // end while
if ($is_empty == 1) {
echo "<OPTION>Keine Artikel</OPTION>";
}
...
...
GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von GaMbIt_ »

Auf Deine Frage...

Ja.. geht...

Zm Code..
Ergänzen? Ist das ein Ratespiel?
Poste doch bitte mal das gesamte Modul, inklusive dem SQL Statement...
Nützliche Contenido Infos gibts hier: Contenido Wiki
stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von stefkey »

ich sagte doch, ich habe keine Ahnung. Ich wollte es besonders klug machen und nur den Teil posten der interessant ist, dabei war ich mir so sicher das ich wenigstens das erkenne :?

Hier nun der ganze Code:

Input:

Code: Alles auswählen

/*********************************************** 
* CONTENIDO MODUL - INPUT 
* 
* Modulname   :       Artikellink Dropdown-Menue 
* Author      :     Mathias Berkenkamp, Jose Rodriguez, Ekkehard Dörre 
* Copyright   :     Mathias Berkenkamp, Jose Rodriguez, Ekkehard Dörre 
* Created     :     24-09-2002 
* Modified    :     09-03-2003 
* Letzte Änderung:  24-05-2004 
* Modified    :     26-05-2008 Tobias Klonk (ported to 4.6 & 4.8) 
* Contenido-Version: 4.6 & 4.8 (start_compatible=false) 
************************************************/ 
echo "<table cellspacing=\"0\" cellpadding=\"5\" border=\"0\"> 
        <tr valign=\"top\">"; 

// Block ein oder ausschalten 

echo"<td>Block:</td><td><input type=\"radio\" name=\"CMS_VAR[1]\" value=\"\""; 
if ("CMS_VALUE[1]" == "") { 
echo "checked=\"checked\""; 
} 
echo ">aus</td></tr><tr><td></td><td><input type=\"radio\" name=\"CMS_VAR[1]\" value=\"0\""; 
if ("CMS_VALUE[1]" == "0") { 
echo "checked=\"checked\""; 
} 
echo ">an</tr><tr valign=\"top\">"; 

// Kategorie Wählen 
$selected = "CMS_VALUE[0]"; 

echo "<td>Kategorie wählen:</td><td> 
            <select name=\"CMS_VAR[0]\">"; 

            // fetch all categorys 
            $query = "SELECT A.idcat, A.level, C.name FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C WHERE A.idcat=B.idcat ". 
                     "AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' ". 
                     "AND C.visible=1 ORDER BY A.idtree"; 

            // execute query 
            $db->query($query); 

            // loop result and build the options 
            while ($db->next_record()) { 

              // indent spacer 
              $spaces = ""; 

              // how many levels 
              $levels = $db->f("level"); 

              for ($i = 0; $i > $levels; $i ++) { 
                // add 2 spaces for every level 
                $spaces = $spaces . "  "; 

              } // end for 

              if ($selected == $db->f("idcat")) { 
                // selected category 
                echo "<option selected=\"selected\" value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>"; 

              } else { 
                // category 
                echo "<option value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>"; 

              } // end if 

            } // end while 

echo "      </select> 
          </td> 
        </tr> 
        <tr valign=\"top\">"; 

// Startartikel 

echo"<td>Startartikel:</td><td><input type=\"radio\" name=\"CMS_VAR[2]\" value=\"\""; 
if ("CMS_VALUE[2]" == "") { 
echo "checked=\"checked\""; 
} 
echo ">nein</td></tr><tr><td></td><td><input type=\"radio\" name=\"CMS_VAR[2]\" value=\"0\""; 
if ("CMS_VALUE[2]" == "0") { 
echo "checked=\"checked\""; 
} 
echo ">ja</tr>    
        
      </table>";
Output:

Code: Alles auswählen

<?php 
/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulname   :   Artikellink Dropdown-Menue 
* Author      :   Mathias Berkenkamp, Jose Rodriguez, Ekkehard Dörre 
* Copyright   :   Mathias Berkenkamp, Jose Rodriguez, Ekkehard Dörre 
* Created      :   24-09-2002 
* Modified   :   09-03-2003 
* Letzte Änderung   :   24-05-2004 
* geändert durch   :   Christa Tabara 
* Contenido-Version   :   4.4.4 
************************************************/ 

if ("CMS_VALUE[1]" == "0") { 

echo "<TABLE cellspacing=\"0\" border=\"0\"><FORM name=\"quicklink\"><TR><TD NOWRAP><SELECT NAME=\"jump\" onChange=\"if (this.options[this.selectedIndex].value.length!=0) location=this.options[this.selectedIndex].value\">"; 
echo"<OPTION VALUE=link>Bitte w&auml;hlen Sie</OPTION>"; 
// selected category 
$selcat = "CMS_VALUE[0]"; 

// select all articles in category without start article 

if ("CMS_VALUE[2]" == "0") { 
$query = "SELECT ARTLANG.title,ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG ". 
         "WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ". 
         "ARTLANG.online = '1' ORDER BY CATART.idart "; 

// select all articles in category with start article 

} else { 
$query = "SELECT ARTLANG.title,ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG ". 
         "WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ". 
         "ARTLANG.online = '1'AND CATART.is_start = '0' ORDER BY CATART.idart "; 

} 

// execute query 
$db->query($query); 

unset($articleID); 
unset($linkID); 


// get articles 
$is_empty=1; 
while ($db->next_record()) { 
    
  $articleID = $db->f("idartlang"); 
  $linkID = $db->f("idart");  
  $link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID");  
  $headline = $db->f("title"); 
  
  
  // HTML template for one element 
   echo"<OPTION VALUE=$link>$headline</OPTION>"; 

  unset($headline); 
  $is_empty=0; 
} // end while 
if ($is_empty == 1) { 
        echo "<OPTION>Keine Artikel</OPTION>"; 
} 

echo"</SELECT></FORM> 
<SCRIPT LANGUAGE=\"Javascript 1.1\"><!-- 
document.quicklink.jump.selectedIndex=0; 
//--></SCRIPT></TD</TR></table>"; 

} else {} 
?>
Besten Dank!
GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von GaMbIt_ »

Wie Du schon richtig erkannt hast werden die Artikel mit

Code: Alles auswählen

ORDER BY CATART.idart 
nach der idart sortiert...
Um die Ausgabe der Abfrage einmal umzudrehen hängst Du hinten einfach ein DESC dran :D klingt einfach.. ist es auch...

Code: Alles auswählen

ORDER BY CATART.idart DESC
Nützliche Contenido Infos gibts hier: Contenido Wiki
stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von stefkey »

Besten Dank nochmal, hat funktioniert ... und soooo wenig zu ändern! php is Toll ;-)

Grüße,
stefkey
GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von GaMbIt_ »

Öhm... *hüstel*

Das ist SQL ... :mrgreen:
Nützliche Contenido Infos gibts hier: Contenido Wiki
idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von idea-tec »

sei doch nicht SO kleinlich ;-)
MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)
GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von GaMbIt_ »

doch doch doch ... *aufstampf* :mrgreen:

deswegen doch der lustige Smiley..
Nützliche Contenido Infos gibts hier: Contenido Wiki
stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von stefkey »

:oops:

PS Ich kann aber Klavier spielen! :mrgreen:
GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von GaMbIt_ »

der war gut...
Nützliche Contenido Infos gibts hier: Contenido Wiki
idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Re: Artikelreihenfolge umdrehen beim Dropdown Menü

Beitrag von idea-tec »

Klavier kann ich nicht spielen, aber meine Fingerfertigkeit wurde bereits mehrfach lobend erwähnt 8)
MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)
Gesperrt