[sql] Opbouw Menu

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior .NET developer

Functie Als junior .NET ontwikkelaar start jij in een ontwikkelteam met 7 .NET developers. In ons team werken er drie senior .NET developer, twee medior .NET developers en twee junior .NET developers. Er is dan ook genoeg senioriteit in ons team om jou te kunnen bieden wat jij nodig hebt! Wij werken in scrum en hebben drie wekelijkste sprints. Daarnaast doen wij minimaal vier keer per jaar een release. Ons platform is ontzettend complex en groot. Het is dan ook in het begin belangrijk dat jij de processen gaat begrijpen. Jij krijgt dan ook een cursus om beter te begrijpen

Bekijk vacature »

Traineeship Java Developer

Functie Wat ga je doen als Java Developer? Jij start via ons bij deze opdrachtgever als Trainee Java ontwikkelaar, tijdens het traineeship ga je in 1 jaar van de basis naar professioneel Java ontwikkelaar. Je start samen met een groep trainees, volgt de aangeboden cursussen en gaat aan de slag bij één van onze opdrachtgevers. Na een aantal maanden volgt de volgende opdracht. Door de groei in jouw rol kom je op steeds complexere opdrachten terecht. Veel afwisseling dus. Collega’s met ervaring helpen je bij deze groei en samen met jouw coach ga je een persoonlijke leerplan opzetten om jou

Bekijk vacature »

Back end developer

Functie Jij als full stack ontwikkelaar komt te werken in een team bestaande uit 4 back end programmeurs, 2 vormgevers/ Front end developers en een online marketeer. Qua persoonlijkheden is het team erg gevarieerd van sportfanaten tot gameliefhebbers en Golfers. Een ding heeft iedereen hier gemeen; Passie voor goede code. In jouw rol zul je voor 90% van je tijd je bezig houden met het ontwikkelen van grote maatwerk applicaties. Daarnaast hebben wij op aanvraag ook wel eens een website of onderhoudsklusje, die opgepakt moet worden en hier ben jij ook niet vies van. De technische uitdaging momenteel is dat

Bekijk vacature »

Front end developer

Functie Qua type opdrachten is er echt een verscheidenheid aan afnemers, zo werken ze met grote multinationals, maar ook met startups. Zo kom je te werken in een gevarieerde omgeving en kan je ook schakelen tussen verschillende culturen. De projecten variëren van greenfield projecten tot langdurige ontwikkeltrajecten. Hier wordt alleen maar gewerkt met aan front end projecten. Daarom maakt het onze partner niet uit waar jij kennis van hebt, als je maar gedegen kennis hebt van Javascript frameworks, Unit testing en ook bekend bent met de scrum methodiek. Eisen Minimaal 4 jaar relevante werkervaring Kennen en ervaring van Javascript frameworks

Bekijk vacature »

SQL Database developer

Functie omschrijving Wil jij meewerken aan het creëren van slimme software om magazijnen als een geoliede machine te laten lopen? Wij zoeken een zorgvuldig persoon, iemand die niet snel de hand omdraait voor complexe algoritmes. Denk jij dat jij de SQL ontwikkelaar bent die wij zoeken? Lees snel verder en wie weet zitten we binnenkort samen aan tafel! Jouw werkzaamheden zullen er als volgt uitzien: Je houdt je bezig met het ontwerpen en ontwikkelen van MS SQL server databases, dit doe je met T-SQL als programmeer laag. Je gaat aan high-end software oplossingen werken, dit doe je voor de optimalisatie

Bekijk vacature »

Senior PHP Developer

Als Senior PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn en coach je andere developers op de hard en soft skills. Wat doe je als Senior PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om

Bekijk vacature »

Java developer

Als Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en staan

Bekijk vacature »

Back-end ontwikkelaar

Functie omschrijving Wil jij meebouwen aan diverse databasesystemen in een klein bedrijf met een platte organisatie? In een team van ruim 10 ontwikkelaars wordt er aan diverse ICT oplossingen gewerkt. Jouw taken hierbij zullen bestaan uit: Het onderhouden en door-ontwikkelen van bestaande databases. Denk hierbij aan schema verbeteringen en performance-tuning. Bij nieuwe ontwikkelingen ga jij ook bezig met het bouwen van het databaseschema. Omdat je in een klein team werkt zal je ook de C# routine verder uitbouwen en ontwikkelen. Ook kan je meedraaien in algemene refactory-, ontwikkel- of testwerkzaamheden. Je zal voornamelijk gebruik maken van de volgende technieken: .NET

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Moordrecht zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

Front-end Developer - Juniorfunctie

Functie omschrijving Ben jij op zoek naar een uitdagende baan als front-end developer, in een informele werksfeer, waar jij echt het verschil kan maken? Wil jij graag werken voor een bedrijf dat sportiviteit en een open communicatie, hoog in het vaandel heeft staan? Dan hebben wij de perfecte vacature voor je! Voor een klein bedrijf in Rijen dat gespecialiseerd is in het omzetten van digitale woningtekeningen naar managementinformatie, zijn wij per direct op zoek naar een allround front-end developer. Jouw werkzaamheden zien er als volgt uit: Ja gaat nauw samenwerken met de back-end developer. De database structuur is volledig gebouwd

Bekijk vacature »

Developer (One Data)

Do you have experience with managing IT Teams in a service delivery organization? Are you keen to bring the team and our platform to a higher level? Then Nutreco has a very interesting role for you! As a One Data developer you are responsible for the management, running and functional use of our integration landscape and processes within Nutreco. Nutreco is using at this time BizTalk 2016, and Apigee for its API management, to be replaced by Azure Integration Services as of 2023. You will be part of a virtual teams of 11 people (own and outsourced) working in an

Bekijk vacature »

Senior java ontwikkelaar integratie

Functieomschrijving Voor de gemeente Rotterdam zijn wij op zoek naar een senior java ontwikkelaar integratie. Taken Binnen een zelfsturend Scrumteam voer je geheel zelfstanding je opdrachten uit en levert het eindresultaat op aan het Integratieteam. Jij voelt je net als alle teamleden verantwoordelijk voor alle aspecten, vanaf de vraag tot en met de oplevering in productie. Je bent kritisch, je helpt de klant om zijn wensen helder te krijgen, je schrijft zelfstandig clean code die van hoge kwaliteit is, met bijbehorende unit- en integratietesten, je ondersteunt zo nodig bij deployments naar productie. Het Integratieteam bouwt componenten (Endpoints) op de ESB.

Bekijk vacature »

Software developer - senior

Functie omschrijving Voor een echt softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking voor de afdeling Software Development! Ben jij op zoek naar een werkgever waar meerdere software developers werken aan interessante projecten? Ben jij op zoek naar een werkgever waar je onderdeel wordt van een team dat echt passie heeft voor het ontwikkelen van software? Dan ben je hier aan het juiste adres! Als softwareontwikkelaar kom je terecht bij een onafhankelijk, door kwaliteit gedreven, doortastend en daarbij op een Agile wijze werkend bedrijf. Ben jij een expert in het vertalen van Componenten van Functionaliteit naar Business lagen?

Bekijk vacature »

Als Lead PHP developer bijdragen aan het onderwijs

Functie Als Lead PHP developer zet je samen met het team en de andere lead developers de technische lijnen uit als het gaat om het ontwikkelen van de applicaties en bepaal je samen met de PO waar elke sprint aan gewerkt zal worden. Je kunt op basis van een user story een goede aanpak formuleren en een planning opstellen, en andere hierin meenemen. Wanneer je team code schrijft verwacht je degelijke oplossingen, bij voorkeur gebruik makend van Domain Driven Design. Je ziet toegevoegde waarde in het beoordelen van het werk van collega’s om zo samen te streven naar hoge kwaliteit

Bekijk vacature »

C# .NET Developer

Functieomschrijving Voor dit leuke softwarre bedrijf in de omgeving Vught zijn we per direct op zoek naar een C#/.NET Developer. Is development jouw passie en doe je dit graag met C#/.NET? Lees dan snel verder! Jou werkzaamheden zullen zijn: Zorgen voor de optimalisatie van de huidige software en het automatiseren van bedrijfsprocessen. Naar aanleiding van de wensen van de klant ga je, met je collega's op zoel naar passende oplossingen en je werkt dit uit tot een mooi eindproduct. Je gaat webshops, websites en webapplicaties ontwikkelen door middel van ASP.NET, C# en MVC Framework. Bedrijfsprofiel Deze opdrachtgever houdt zich bezig

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

19/06/2024 19:58:28
 
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.