[sql] Opbouw Menu

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior/Senior Python developer

Functie Jij als Senior Python developer hebt al ruime ervaring opgedaan. Bedrijven komen bij de organisatie om technische vraagstukken op te lossen. Jij als specialist bent dus de representatie van deze kwaliteit. Je zult de keuze krijgen tussen lange of korte projecten waarin je komt te werken in multidisciplinaire teams. Projecten die je gaat uitvoeren zijn zeer uitlopend. Zodoende kun je aan de ene kant kiezen voor een greenfield project en stroom je bij een ander project midden in een migratietraject in. Voor de ene klant ontwikkel je ene nieuwe portal en voor het andere project duik je veel meer

Bekijk vacature »

.NET developer

Functie Heb jij veel kennis van ASP.NET Webforms en wil jij juist de overstap maken naar ASP.NET Core? Wij zijn per direct op zoek naar een ervaren .NET Webdeveloper die met ons samen ons platform wilt herschrijven van ASP.NET Webforms naar ASP.NET Core. Voor jou de unieke kans om met ons samen te innoveren en kennis op te doen van de nieuwste technieken binnen de Microsoft Stack. Wij hebben een development team met 10 IT specialisten bestaande uit onder andere 4 backend .NET developers en twee front-end developers. Wij zijn continu bezig om ons als team en bedrijf te blijven

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Als Front-end developer werken aan apps voor het o

Functie Als Front-end developer werk je intensief samen met 1 van de UX-designers en denk je mee over de gebruiksvriendelijkheid en design van onze web- en mobile apps. Je bent betrokken bij sessies met gebruikers om designs te valideren en usability van de app-in-wording te testen. Vervolgens gebruik je dit om samen met je team waarin ook back-end (.NET) developers zitten, te zorgen voor de realisatie van de best mogelijke apps voor studenten en docenten. Eisen • Je hebt een hands-on development en coding mind-set en werkt graag aan een high quality code base welke je consequent onderhouden kan worden

Bekijk vacature »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

Experienced Lead Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Delft Vacature ID: 13301 Introductie We are seeking a Lead Java Developer for our team in the area of Delft. You will develop an application used exclusively by the engineers and geologists for site characterizations, which imports raw field and laboratory measurements for further processing, integration, ground modelling, and geotechnical analysis and reporting. The client/server application is entirely written in Java, and the server is hosted in the Amazon cloud, utilizing frameworks such as Spring and Hibernate, and connected to an MS SQL Server RDS instance. There is a trend towards using more

Bekijk vacature »

Medior/senior PHP ontwikkelaar E-commerce

Functie Het software development team bestaat momenteel 5 scrum teams . Ieder team heeft een eigen SCRUM Master en eigen tester. Zij werken voornamelijk in PHP en met hun eigen geschreven framework wat Symfony based is . Jij bent samen met je collega’s verantwoordelijk voor het interne softwaresysteem en alle projecten die daar omheen lopen. Alles wat jij ontwikkelt, wordt direct toegepast en uitgerold (wereldwijd). Dit maakt jouw werk tastbaar en uitdagend! Een greep uit jouw werkzaamheden: Toevoegen en ontwikkelen van nieuwe functionaliteiten Logistieke software ontwikkelen voor intern gebruik Tientallen gigabytes aan data inzichtelijk maken Altijd op zoek gaan naar

Bekijk vacature »

Front-end Angular developer

Functie In jouw rol als Front-End developer werk je samen met de backend developers om middels tweewekelijkse sprints het platform naar een hoger niveau te tillen. Hiernaast heb je affiniteit met data en werk je graag samen met het team om de gegevensintegriteit en -beveiliging te waarborgen, om ervoor te zorgen dat de gebruiker wereldwijd de beste SaaS-services heeft. Deze organisatie heeft meer dan 100 mensen in dienst, waarvan er 45 in Nederland werken. Het ontwikkelteam bestaat uit 10 mensen en is verdeeld in 2 scrumteams. Het eerste team bestaat uit Java en Scala ontwikkelaars. Het tweede team, waar jij

Bekijk vacature »

PHP developer (Laravel/Vue.js)

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

Bekijk vacature »

Scrum Master

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Scrum master op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je begeleidt twee teams binnen de afdeling Platform Services (PLS). Je helpt mee de devops manier van werken van de teams verder door te ontwikkelen. Je helpt de PO bij het managen van de product backlog; het voorbereiden van

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET ontwikkelaar start jij in ons development team met twee andere .NET developers. Als team werken jullie in scrum en is er iedere ochtend om 11.00 een standup. Jij krijgt als junior .NET ontwikkelaar een inwerk traject dat echt specifiek wordt ingericht op basis van wat jij nodig hebt. Een van de grootste pluspunten bij ons is dat wij binnen ons bedrijf veel (technische) vrijheid geven en juist eigen initiatieven erg stimuleren. Jouw werkzaamheden gaan er bij ons als volgt uit zien: – Het ontwikkelen van nieuwe software samen met interne en eventueel externe ontwikkelaars; – Het

Bekijk vacature »

Lead developer

Functie Als Lead developer wordt jij onderdeel van een multidisciplinair team van circa 23 software engineers. Als team werken jullie agile en zijn termen als Continuous Integration en Continuous Delivery dagelijkse koek. Jullie werken aan uitdagende en afwisselende projecten met als doel klanten een totaal oplossing aan te kunnen bieden. Jij wordt verantwoordelijk voor complete projecten waarbij jij als verantwoordelijke zorgt dat het project op de juiste manier blijft draaien. Zo haal jij ook de requirements op bij de klant en kijk jij samen met het team en met de salesafdeling hoeveel uren hiervoor nodig zijn. Daarnaast stuur jij jouw

Bekijk vacature »

Belastingdienst - Freelance Senior Cobol Applicati

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 7 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Functieomschrijving: In de applicatie ETM zijn nu de inningsvoorzieningen voor ongeveer 25 aangifte- en aanslagmiddelen opgenomen. ETM is een extern aangeschafte service en het huidige contract met leverancier Oracle loopt af op 31-12-2022. Het programma uitfaseren ETM heeft als doel om vervanging te realiseren waarmee alle nu in gebruik zijnde ETM ondersteuning wordt overgenomen in nieuwe Inningsvoorzieningen om de continuïteit van de inningsprocessen te waarborgen. Eén van de inningsvoorzieningen die voor het einde van 31-12-2022

Bekijk vacature »
Bart Tuma

Bart Tuma

16/11/2008 12:27:00
Quote Anchor link
Hallo,

Ben momenteel bezig met een menu-boom te maken.
Het probleem: hij selecteerd netjes alle menu onderdelen maar nu moet ik ze orderen, ism met $_GET.

Hij selecteerd:

- De Heidewachtel
-- Ontstaan
-- kennelnaam
-- Pups
-- Onze Honden
--- Test Pagina Heidewachtels
--- Test Test Pagina Heidewachtels

De Streepjes zijn onderliggende pagina's, maar hoe zorg ik dat ze met een get-actie pas zichtbaar worden...

dus als ik zeg maar Heidewachtels selecteer en de eerste resultaten weergeeft dat zijn dus Ontstaan, kennelnaam, Pups en onze honden zichtbaar word en als ik dan op onze honden klik dat de Test Pagina Heidewachtels en Test Test Pagina Heidewachtels pagina wordt weergeven ?

Mijn sql:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
$sql_ =
    "
SELECT
    *
FROM
    Pagina AS t1
INNER JOIN
    Pagina AS t2
ON
    t2.PaginaSid = t1.PaginaId
AND
    t1.GroepId = '" . $Groep_ . "'
";


De sql Tabel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
PaginaId  PaginaSid  GroepId   PaginaTitel  PaginaContent  
8    NULL    6    Ook een Bulldog
9    NULL    5    De Heidewachtel
10    NULL    4    SUFFOLK SCHAPEN
12    NULL    0    Welkom Op Onze Website
17    0    0    Werkt nu wel
20    9    5    Ontstaan kennelnaam
21    9    5    Pups
22    8    6    Onze Bulldogs
28    9    5    Onze Honden
31    20    5    Test Pagina Heidewachtels
32    31    5    Test Test Pagina Heidewachtels
30    22    6    In memoriam
 
PHP hulp

PHP hulp

16/04/2024 19:34:35
 
Bart Tuma

Bart Tuma

17/11/2008 14:54:00
Quote Anchor link
Kleine Bump....
 
Marco

Marco

17/11/2008 15:09:00
Quote Anchor link
Dus in eerste instantie moet De Heidewachtel zichtbaar zijn, als daar op geklikt wordt Ontstaan t/m Onze Honden, en de onderste twee worden dan zichtbaar als er op Onze Honder geklikt wordt?

Dat is misschien makkelijker te maken met javascript, dan kun je zoiets maken:
http://dev.themadman.nl/menu.html
'Onze Honden' klapt nog niet uit in het voorbeeld.
 
Thijs Damen

Thijs Damen

17/11/2008 16:00:00
Quote Anchor link
Nee joh, geen javascript.

ik heb net een 2-level menu geschreven. maar 3-level is ook goed mogelijk (gewoon doorbouwen op de foreach).

zie hier: de php code. ps, is in zend geschreven. het enigste wat je hoeft te herschrijven is de select functie
$sql = "SELECT * FROM menu ORDER BY parent_id, id ASC";

word hem dan.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<?php

class Menu extends Zend_Db_Table
{

    protected $_name = 'menu';
    public function _getMenu()
    {

        
        $select = $this->select()->order('parent_id')->order('id ASC');
        $rowset = $this->fetchAll($select);

        foreach ($rowset as $MenuItem) {
              if ($MenuItem->parent_id == '0') {
                $parent_menu[$MenuItem->id]['id'] = $MenuItem->id;
                $parent_menu[$MenuItem->id]['label'] = $MenuItem->menu_name;
                   $parent_menu[$MenuItem->id]['link'] = $MenuItem->menu_link;
                   $parent_menu[$MenuItem->id]['count'] = '0';
             }
else {
                   $sub_menu[$MenuItem->id]['parent_id'] = $MenuItem->parent_id;
                    $sub_menu[$MenuItem->id]['label'] = $MenuItem->menu_name;
                    $sub_menu[$MenuItem->id]['link'] = $MenuItem->menu_link;
                    $parent_menu[$MenuItem->parent_id]['count']++;
              }
        }


        $MenuList = $this->dynamic_menu($parent_menu, $sub_menu);
        return $MenuList;
        }


        protected function dynamic_menu($parent_array, $sub_array)
        {

         $menu = '<ul id="menu">';
          foreach ($parent_array as $pkey => $pval) {
              $menu .= "<li><a class='parent_button' href='".$pval['link']."'>".$pval['label']."</a>";
              if ($pval['count'] > '0') {
                      $menu .= "<ul>";
                foreach ($sub_array as $skey => $sval) {
                         if($sval['parent_id'] == $pval['id']) {
                        $menu .= "<li><a class='sub_button' href='".$sval['link']."'>".$sval['label']."</a></li>";
                         }
                    }

                $menu .= "</ul>";
              }

              $menu .= "</li>";
          }

          $menu .= "</ul></div>";
          return $menu;
        }
      }
[
/code]

css
[code]
#menu, #menu ul {
    list-style: none;
    margin-top: -10px;
}


#menu li {
    float: left;
    position: relative;
    width: 172px;
    height: 36px;
    padding-left: 16px;
}


#menu li ul {
    position: absolute;
    display: none;
    padding-top: 18px;
    margin-left: -12px;
}


#menu li:hover ul, #menu li.over ul {
    display:block;
}

.
parent_button {
    display: block;
    color:red;
    font-size: 18px;
    font-weight: bold;
}

.
sub_button {
    color: black;
    font-size: 15px;
    text-decoration: none;
}

.
sub_button:hover {
    text-decoration: underline;
}
[
/code]

ps. de reden waarom ik .sub_button en .parent_button gebruik is omdat ik dat makkelijker vind stylen. het hoeft natuurlijk niet.

en als laatste je database opzet word zoiets als:
Table: Menu
id (int)
parent_id (int)
menu_name
menu_link


ps. je hoeft het natuurlijk niet te gebruiken maar volgens mij is hier geen javascript voor nodig en heb je op deze manier een nette manier om alles uit een database te trekken en je menu op te zetten.

Nog even snel een edit.

De css is een aangepaste versie van:
http://www.javascriptsearch.com/guides/Beginner/articles/061024DropDownMenu.html

zie daar ook een voorbeeld. Daar zit helaas niet de php bij, maar met een beetje aanpassen moet het je lukken de layout van je uiteindelijke html(source code bekijken;)) net zo te krijgen als daar en de CSS ook te kunnen gebruiken
Gewijzigd op 01/01/1970 01:00:00 door Thijs Damen
 
Jesper Diovo

Jesper Diovo

17/11/2008 16:44:00
Quote Anchor link
Maak een extra veld aan waar je een rank in zet. Dan kun je via ORDER BY rang ASC alles in de volgorde zetten welke jij wilt.
 
Bart Tuma

Bart Tuma

17/11/2008 16:48:00
Quote Anchor link
Javascript, nee dankje... kan beter met $_GET...
Levels moeten onbeperkt zijn.

maar ik zit grotendeels met het selecteren uit de database
dus als op de heidewachtel wordt geklik dat dan met een GET (?pagina=content&gid=3&sid=9, is de get dus)

GID = Groeps ID
SID = Sub ID

maar als hij dus de sub id uitleest dan weergeeft hij 'De heidewachtel' niet meer, hoe zorg ik er dan voor dat hij wel zichtbaar blijft ?...

@ Thijs, Das OO(P) of niet ?.

Edit:
@Jezpur: Dat is een idee, zal er even naar kijken.
Gewijzigd op 01/01/1970 01:00:00 door Bart Tuma
 
Thijs Damen

Thijs Damen

17/11/2008 17:12:00
Quote Anchor link
Ehm ja. volgens mij wel:P

Wat je misschien ook zou kunnen doen om je doel te bereiken is om een extra tabel te maken speciaal voor menu items.

en dan menu_id op te nemen in je content tabel. zo de link te leggen tussen de huidige te weergeven pagina. en menu opties.

dan kom je uit op:

content:
pagina_id, titel, content, FK menu_id

menu:
PK id, parent_id, naam, link

en dan bijvoorbeeld mijn code aanpassen met:
[code
$menu .= "<li><a class='parent_button' href='".$pval['link']."'?id=".$pval['id'].">".$pval['label']."</a>"
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
zodat je link uiteindelijk: www.jewebsite.nl/link.php?id=menu_id word.
dan moet je volgens mij daar al je informatie uit kunnen halen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.