php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.10.2006, 14:33  
Benutzer
 
Registriert seit: 11.04.2006
Beiträge: 95
winki
winki eine Nachricht über ICQ schicken
Standard Liste formatieren

Hi ich habe mir folgende Funktion für das auslesen meines Menüs auf meiner Website erstellt. Ich habe deswegen eine Funktion, da ich 3 Menüs habe (Top, Haupt-, Footer-Menü)

In der Datenbank haben alle Menüs eine "Positionsnummer." Also Top hat 2 Haupt hat 1 und Footer hat 3.

Die Funktion sieht folgendermaßen aus:
PHP-Code:
<?php
/**
 * @author      Adalbert Rohr <info@berti-rohr.de>
 * @copyright  2006-2007 Wirtschaftsprojekt JTG
 * @desc        Ruft die Navigationselemente aus der DB ab
 * @uses        configuration.php
 */ 
function navigation($position)
{
    require(
"configuration.php");
    
$db = new sql($mysql_host$mysql_user$mysql_pass$mysql_data);
    
$db->query("SELECT `link`, `title` FROM `navigation` WHERE `pruef` = '1' AND `position` ='"$position ."' ORDER BY `order` ASC");

    if(
$db->num_rows()) {
        print 
"<ul>\n";
        while(
$row $db->fetch_obj()) {
            if(
$position '1') {
                print 
"[*]<a href=\""$row->link ."\" title=\""$row->title ."\">"$row->title ."</a> |";
            } else {
                print 
"[*]<a href=\""$row->link ."\" title=\""$row->title ."\">"$row->title ."</a>";
            }
        }
        print 
"[/list]\n";
    }
}
?>
Wenn ich die Menüs ausgeben lassen will, dann schreibe ich für das HauptMenü print navigation('1'); wenn ich aber das Top- bzw. das Footermenü ausgeben lassen will, soll zusätzlich hinter jeden Listenpunkt ein | gesetzt werden.

Und jetzt die Frage, ist es möglich, dass ich es so mache, dass beim letzten Listenpunkt den | weglassen kann?
__________________
Eifersucht ist eine Leidenschaft, die mit Eifer sucht, was Leiden schafft
winki ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.10.2006, 14:54  
Gast
 
Beiträge: n/a
Standard

Vergleich doch die Iteration Deiner Schleife mit num_rows. Dann weisst Du wann der letzte kommt.
 
Alt 17.10.2006, 15:56  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

das klassische Verfahren ist wohl, alle DS in ein Array einzulesen und das dann mit implode ("|" , $x) in nen String zu verwandeln..
nikosch ist offline  
Alt 17.10.2006, 16:01  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Aber das klassische Verfahren wird kläglich scheitern, weil der | nicht ganz am Ende des jeweiligen Textes steht, sondern noch innerhalb des letzten Tags.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 17.10.2006, 22:00  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

"ZakMc" hat eine brauchbare Lösung ja schon geschrieben, aber braucht es diese Pipes überhaupt? Kannst du den Strich nicht mit css hinbekommen?

Siehe z.B. hier:
http://css.maxdesign.com.au/listamatic/horizontal32.htm

Basti
Basti ist offline  
Alt 17.10.2006, 22:38  
Benutzer
 
Registriert seit: 11.04.2006
Beiträge: 95
winki
winki eine Nachricht über ICQ schicken
Standard

Hey danke dir super tipp mit dem css-style!!!
__________________
Eifersucht ist eine Leidenschaft, die mit Eifer sucht, was Leiden schafft
winki ist offline  
Alt 18.10.2006, 08:58  
Gast
 
Beiträge: n/a
Standard

@Basti ... ok mit css war die Premiumlösung
 
Alt 18.10.2006, 15:32  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Zitat von Der_Gerhard
Aber das klassische Verfahren wird kläglich scheitern, weil der | nicht ganz am Ende des jeweiligen Textes steht, sondern noch innerhalb des letzten Tags.
Geht nicht gibts nicht.

Code:
sprintf('<ul>[*]%s[/list]',
implode ('|[*]' , $aArrayMitLinks));
:wink:

PS: wie krieg ichs denn mit CSS hin, daß die Striche (sind wohl border??) nur zwischen den Elementen stehen?
[edit] vergeßt es, hab den Link nicht gesehen. Aber reichlich viel Overhead für diesen Effekt. Naja, die alte Struktur vs. Formatierung Diskussion...
nikosch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Javascript Select liste verdoppeln dsmcg HTML, Usability und Barrierefreiheit 8 19.10.2006 16:56
Liste Fatal Error PHP Tipps 2006 4 04.05.2006 16:55
wie kann ich das datum formatieren: bendigo Datenbanken 4 30.08.2005 13:43
[UNRESOLVED] array in html liste PHP Tipps 2005-2 4 09.08.2005 13:04
Php liste per E-Mail? PHP Tipps 2005-2 2 21.07.2005 09:43
Dropdown-Menü nach klick in Liste füllen PHP Tipps 2005-2 0 13.06.2005 09:33
Daten von einer Liste in eine Eingabemaske (Formular) - wie? PHP Tipps 2005 6 26.05.2005 08:33
*JavaScript* Doppelklick in Liste PHP Tipps 2005 17 24.05.2005 11:53
[Erledigt] Top 10 Liste Datenbanken 9 20.04.2005 22:32
formatierung einer liste "nebeneinander" robo47 HTML, Usability und Barrierefreiheit 7 26.03.2005 07:12
[Erledigt] Liste in Textarea einfügen HTML, Usability und Barrierefreiheit 0 03.01.2005 19:16
dropdown liste soll durch onChange nächste liste laden HTML, Usability und Barrierefreiheit 1 13.12.2004 15:42
[Erledigt] Preisanzeige formatieren PHP Tipps 2004-2 2 05.11.2004 21:32
TIME-Feld formatieren RudiS Datenbanken 4 16.07.2004 16:16
Dropdown Liste automatisch erstellen PHP Tipps 2004 2 20.06.2004 12:41

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php listenpunkt, php listen alles bis auf eine, listen formatieren php, php listen formatieren, select liste formatiert ausgeben, listen formatierren php, wirtschaftsprojekt jtg

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.