Query: Hoe aanpakken?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Capelle aan den IJssel zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je

Bekijk vacature »

Software Developer (Junior functie)

Functieomschrijving Wij zijn op zoek naar een Software Developer! Sta jij in de startblokken om je carrière te beginnen en kan je niet wachten om toffe software te gaan ontwikkelen? Kortom, ben je onlangs afgestudeerd of sta je op het punt om je papiertje te behalen? Voor een IT dienstverlener dat gespecialiseerd is in Microsoft technologie zijn wij op zoek naar C#.NET Developers. Het bedrijf heeft meerdere klanten in regio Utrecht waar je permanent kan komen te werken. Kom je liever te werken bij een klein softwarebedrijf of bij een groot consultancy bureau? Dat is helemaal aan jou de keuze!

Bekijk vacature »

Back-end Software Developer

Functie omschrijving Ben jij op zoek naar een uitdagende development functie bij een klein gespecialiseerd softwarebedrijf? Wil jij graag hybride werken (combi tussen thuis + kantoor), loop jij warm voor maatwerk software en voel jij je prettig in een informele cultuur? Zoek dan niet verder! Reageer direct! Voor een gewilde werkgever in omgeving Tilburg zoeken wij een back-end software developer met een aantal jaar werkervaring. Je gaat werken voor een klein softwarebedrijf dat gespecialiseerd is in de ontwikkeling van integratiesoftware. Jouw werkzaamheden zien er als volgt uit: In een klein team met 4 ontwikkelaars houd jij je bezig met afwisselende

Bekijk vacature »

.NET Developer

Functie omschrijving In deze functie ga je werken als C# Developer. Jij gaat aan de slag met de volgende taken: Maatwerk software bouwen; Huidige softwareprojecten verder uitbouwen en optimaliseren; Ideeën van de klant omzetten naar handige oplossingen en tools; Bovenstaande doe je middels de Microsoft- stack: C#, ASP.NET en MVC/ Entity Framework. Ben je net afgestudeerd aan een HBO opleiding Informatica, aarzel dan niet om te solliciteren. Dit is namelijk de ideale startersfunctie! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van websites. Dit is door

Bekijk vacature »

Software Developer C# - Deventer

Software Developer C# – Deventer Bijdragen aan de toekomst van het onderwijs! Ben jij op zoek naar een dynamische omgeving waar vol enthousiasme wordt gewerkt aan software voor interactieve dashboard- en analysetoepassingen ter verbetering van het onderwijs? Dan zijn wij het bedrijf voor jou! TIG is een bedrijf met een informele en ondernemende werksfeer, waarbij goede ideeën snel leiden tot concrete acties. Wij zijn een software ontwikkelorganisatie en focussen ons op het ontwikkelen en implementeren van oplossingen voor het leveren van managementinformatie, datavisualisatie en analyses voor het onderwijs. Met onze dashboard- en analyseoplossingen zetten scholen gegevens om naar betekenisvolle informatie.

Bekijk vacature »

Front-end (Angular) developer - remote werken

Functie Als Front-end (Angular) developer ga je aan de slag met het uitbouwen van hun webapplicatie, als één van de front-end experts ga je samen met collega’s in een devops team werken aan een nieuw front-end voor hun calculatie oplossing. Binnen de calculatiesoftware kunnen meerdere professionals tegelijk samenwerken, 3D calculaties uitvoeren en ook inzien met de benodigde specifieke details. Deze software wordt veel ingezet om projectbeschrijvingen en kosten in kaart te brengen, en tijdens de uitvoering te bewaken. Maar hiernaast liggen er in de toekomst veel meer plannen op het gebied van front-end in de andere applicaties. Genoeg te doen

Bekijk vacature »

Consultant Low Code Developer

Functie omschrijving Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Voor een mooie opdrachtgever in omgeving Delft zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten. Onderdelen functie Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan Mendix of Betty Blocks. Je bent verantwoordelijk voor

Bekijk vacature »

Senior PHP Developer

As a Senior PHP Developer at Coolblue, you ensure that our webshops work as optimal as possible and you choach other colleagues on the hard and soft skills. How do I become a Senior PHP Developer at Coolblue? As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you are not averse to a little TypeScript or other technologies that might be used. Would you also like to become a PHP Developer at Coolblue? Read below if the

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer!? Sta jij aan het begin van jouw loopbaan of heb jij misschien al enige ervaring? Vind jij het daarnaast belangrijk om jezelf constant te kunnen ontwikkelen en uitdagen? Lees dan snel verder! Voor een vooraanstaand softwarehuis in Nieuwegein ben ik op zoek naar een Junior Software Developer. De eigenaar van het bedrijf is ervan bewust dat je als junior nog een hoop kan leren, waardoor je de eerste maanden veel begeleiding en diverse trainingen krijgt. Daarna ga je samen met je collega's aan zowel kleine als grote projecten werken.

Bekijk vacature »

Senior Fullstack Developer (GOLang, TypeScript)

Bedrijfsomschrijving Our client is one of the large worldwide accounting firms. Functieomschrijving We are looking for a senior (all-round) developer (Project On Demand / Tax Technology) Uses as much as possible technology in support of the development process: Git, Jenkins, Docker, npm, skaffold, helm, etc. We are looking for a real hands-on developer; ie not a team lead or other managerial-style role; Acts with integrity both internally and externally and takes personal responsibility in this respect; Curious about the developments within their field and driven to make a difference with the team; Able to empathize with colleagues and stakeholders and

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 »

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

C#.NET-developer - JUNIOR

Functie omschrijving Voor een leuke opdrachtgever in omgeving Brielle zijn wij op zoek naar een junior developer. Werk jij graag met de volgende tools & technieken? C#, .NET, ASP.NET, MVC en SQL? Kijk dan snel of dit iets voor jou is! Als programmeur bij een productiebedrijf zal je voornamelijk nieuwe software schrijven maar ook bestaande software verbeteren. Verder werk je veel samen in back end projecten met leuke collega's. Bedrijfsprofiel Met een team van ruim 130 personen staan ze elke dag weer klaar om IT en Business te combineren door het ontwikkelen van producten op maat. Er zijn 3 teams,

Bekijk vacature »

Oracle Developer / PL SQL

Dit ga je doen Software ontwikkeling aan een internationaal gebruikt pakket; Werken met technieken als Oracle 19c, Toad, PL/SQL, Oracle Forms, Reports en Designer; Meedraaien in internationale projecten; Meedenken over technisch en functioneel ontwerp; Samenwerken met collega's als Informatie Analisten, Testers en Release Managers; Soms wensen en eisen afstemmen met de business. Hier ga je werken Onze klant, een internationaal bekend bedrijf dat essentiële producten maakt waar iedereen graag gebruik van maakt, zoekt versterking in het Software Development team. Samen met 3 developers, een release manager, een informatie analist en 3 testers werk jij aan een systeem waarmee complexe producten

Bekijk vacature »

Pagina: 1 2 volgende »

Marina janssen

marina janssen

20/02/2016 23:38:49
Quote Anchor link
Ik heb een kolom Kleur in een database. De inhoud ziet er zo uit: bijv. zwart/wit of zwart/wit/rood of rood/wit/zwart of wit/zwart/rood of wit/rood etc.

Nu wil ik dat je met checkboxes kleuren kan selecteren. Dus als je kiest [wit] [zwart] en [rood], dat alle beesten met die kleuren (ongeacht de volgorde in de kolom) tevoorschijn komen.

Weet iemand welke functie je daarvoor kan gebruiken?
 
PHP hulp

PHP hulp

21/11/2024 14:34:12
 
Thomas van den Heuvel

Thomas van den Heuvel

20/02/2016 23:57:50
Quote Anchor link
Is het voldoende dat die beesten een of meer van die kleuren hebben, of moet de combinatie (ongeacht de volgorde) precies overeenkomen?

Of wil je kunnen kiezen of het kleur X en kleur Y en kleur Z is (alles inclusief), of kleur X en/of kleur Y en/of kleur Z (alles optioneel)?
 
Marina janssen

marina janssen

21/02/2016 00:32:21
Quote Anchor link
De combinatie moet precies zijn. Dus als je wit, rood en zwart hebt aangevinkt dat moeten ze minimaal alledrie die kleuren hebben. (in eerste voorbeeld zou je drie records krijgen )

NB
Ze mogen wel meer kleuren hebben. Dus als er een dier is dat bijv. wit/rood/zwart/beige is dan moet die er ook uitrollen.
Gewijzigd op 21/02/2016 00:36:35 door marina janssen
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/02/2016 08:39:03
Quote Anchor link
Je mag wat mij betreft die kolom kleuren direct uit je tabel halen.

Dan mag je een tabel kleuren aanmaken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
ID Kleur
========
1  Wit
2  Rood
3  Zwart
...


En vervolgens mag je een koppeltabel maken (user_kleur):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
user_id Kleur_id
================
   1       1     // gebruiker 1 heeft kleur Wit geselecteerd
   1       3     // gebruiker 1 heeft kleur Zwart geselecteerd
   2       1     // gebruiker 2 heeft kleur Wit geselecteerd
   2       2     // gebruiker 2 heeft kleur Rood geselecteerd
   2       3     // gebruiker 2 heeft kleur Zwart geselecteerd
...


Elk record in die laatste tabel is een aangevinkte checkbox in je formulier (van een bepaalde gebruiker).

Nu wil je weten welke kleuren gebruiker 1 geselecteerd heeft:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
SELECT k.id, k.kleur FROM kleur k
JOIN user_kleur uk ON k.id = uk.kleur_id
WHERE k.user_id = ?

- In bovenstaande sql wordt gebruik gemaakt van JOIN om twee tabellen te koppelen
- Ook worden aliasses gebruikt. k staat voor de tabel 'kleur' en uk staat voor de tabel 'user_kleur'
- Op de plek van het vraagteken moet het ID van de gebruiker komen
Gewijzigd op 21/02/2016 11:55:27 door Frank Nietbelangrijk
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

21/02/2016 10:24:02
Quote Anchor link
Gebaseerd op Frank zijn opzet (ik heb alleen de tabel- en/of kolomnamen wat veranderd) kan je met de volgende query dan het gevraagde ophalen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
SELECT d.naam,
    GROUP_CONCAT(k.kleur ORDER BY k.kleur SEPARATOR '/') kleuren
FROM dieren d
JOIN dieren_kleuren c
    ON d.dier_id = c.dier_id
JOIN kleuren k
    ON c.kleur_id = k.kleur_id
WHERE c.kleur_id IN (1,3)
GROUP BY d.naam
HAVING COUNT(*) >= 2
Gewijzigd op 22/02/2016 09:21:54 door Ger van Steenderen
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/02/2016 11:50:45
Quote Anchor link
* knip * (sorry wilde mijn vorige post wijzigen maar ik had het verkeerde knopje)
Gewijzigd op 21/02/2016 11:53:36 door Frank Nietbelangrijk
 
Thomas van den Heuvel

Thomas van den Heuvel

21/02/2016 14:42:02
Quote Anchor link
Een alternatieve aanpak is de volgende:
Geef de kleur een code dat een getal is wat een macht van 2 is:
wit = 1 (2 tot de macht 0)
zwart = 2 (2 tot de macht 1)
rood = 4 (2 tot de macht 2)
(enzovoorts, 8, 16, 32, 64 etc.)

In je "beesten" tabel kun je dan in één kolom de kleuren die een beest rijk is opslaan. Dit is dan de optelsom van deze codes. Bijvoorbeeld een witrood (of roodwit) beest heeft kleurcode 5 (1 + 4), een witzwart (of zwartwit) beest heeft code 3 (1 + 2).

Omdat de kleurcode is opgebouwd uit getallen die een macht van 2 zijn, is elke kleur uniek afleidbaar uit deze optelsom.

En hoe lees je dit weer uit een tabel als je op zoek bent naar een of meer specifieke kleuren? Dit doe je (onder andere) met de bitwise operator &. Deze operator werkt op twee waarden (operanden) net zoals de operator + werkt op A en B in de rekensom A + B. Maar wat is de uitkomst van A & B? Deze operator vergelijkt elke overeenkomende bit (lees: macht van 2) in A en B met elkaar. De uitkomst van deze som is de optelsom van alle bitjes die zowel in A als B op "1" stonden.

Je moet het zo zien, elk getal is te representeren als een rij nullen en enen die overeenkomen met machten van 2. Hierbij lees je zo'n bitreeks van recht naar links. Neem bijvoorbeeld 10110 binair, dit komt overeen met (gelezen van rechts naar links):
0 x 2 tot de macht 0 = 0 +
1 x 2 tot de macht 1 = 2 +
1 x 2 tot de macht 2 = 4 +
0 x 2 tot de macht 3 = 0 +
1 x 2 tot de macht 4 = 16
-------------------------
22 decimaal.

Stel dat je wilt weten of de tweede bit en de derde bit (vanaf rechts gezien) "aan" staan, dan kun je dit vergelijken met het getal 0 + 2 + 4 = 6 via de & operator. De uitkomst van deze som moet ook 6 zijn.

Dit zou je bijvoorbeeld in MySQL als volgt kunnen doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT 22 & 6

De uitkomst hiervan is ook 6, dus de tweede en de derde bit van 22 staan aan.

Op een andere manier weergegeven:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
10110
00110 &
-------
00110


En op eenzelfde wijze, mogelijk heb je de parallel met je kleurcodes al gezien, kun je een beest-kleurcode vergelijken met een gewenste kleur(combinatie).
 
Marina janssen

marina janssen

21/02/2016 15:37:30
Quote Anchor link
Wat betreft het laatste voorbeeld met kleurcodes: stel ik heb wit, zwart en rood aangevinkt, dan komt de kat die zwart/wit/rood/beige is er dus niet uit rollen, vrees ik.
 
Thomas van den Heuvel

Thomas van den Heuvel

21/02/2016 16:03:18
Quote Anchor link
Jawel.

Stel:
zwart = 1
wit = 2
rood = 4
beige = 8

Wat je wilt is zwart + wit + rood = 7.
De kat met zwart + wit + rood + beige = 15.

15 & 7 is nog steeds 7. Oftewel, de selectie zwart + wit + rood levert ook beesten met zwart + wit + rood + whatever op.
 
Marina janssen

marina janssen

21/02/2016 19:56:55
Quote Anchor link
dit gaat boven mn pet
Ik zit hier al de hele middag naar te kijken maar tis alsof je chinees praat, dat van die kleurcodes begrijp ik nog wel maar hoe uit te lezen snap ik echt h e l e m a a l n i k s van
kan het niet makkelijker?
 
Ivo P

Ivo P

22/02/2016 14:14:19
Quote Anchor link
Thomas' manier werkt wel, maar is best complex om te begrijpen. Al is de berekening als je hem door hebt eigenlijk eenvoudig.

Ik zou gaan voor Franks benadering met een koppeltabel gaan
 
Thomas van den Heuvel

Thomas van den Heuvel

22/02/2016 14:40:49
Quote Anchor link
Mja, maar als je dan vervolgens @Ger zijn query hanteert, deze zul je elke keer moeten aanpassen op de selectie: het IN(...) deel (wat overeen moet komen met de kleur-id's) en de COUNT() (die overeen moet komen met het aantal geselecteerde kleuren). De complexiteit zit simpelweg op een andere plaats, is toch een beetje lood om oud ijzer.

Ook, als je wat boolse logica kent en kunt (& staat niet ver af van && en die zou, als je met PHP of JavaScript werkt, toch al redelijk vertrouwd moeten zijn) en enigszins kunt tellen in n-tallige stelsels (je bent het 10-tallige stelsel al gewend, de inwoners zijn de cijfers 0 t/m 9) dan staat het binaire stelsel (inwoners 0 en 1) hier ook niet zo ver vanaf. Maar ja, als je geen lijn kunt bespeuren in dit alles dan begrijp ik dat het lastig is. Wanneer je je dit eigen hebt gemaakt en terugkijkt is het eigenlijk meer van hetzelfde maar in een andere verschijningsvorm. In de vorm zit niet de moeilijkheid, want die kende je in zekere zin al.

Je zou "&" ook kunnen zien als een functie die twee argumenten accepteert. Als je begrijpt wat je invoert, en hoe de uitvoer totstand komt, dan snap je ook wat "&" in feite doet. Je zou dit simpelweg kunnen zien als de functionaliteit van &&, die twee booleans (twee bitjes, 0 of 1, false of true) accepteert. Het resultaat hiervan is alleen true (of 1) als beide bits true (1) zijn. Kijk nu nog eens naar deze som:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
10110
00110 &
-------
00110

Dit is een simpele rekensom, maar enkel met de cijfers 0 en 1 en een ander wiskundig symbool.
 
Marina janssen

marina janssen

22/02/2016 15:24:48
Quote Anchor link
machtsverheffen was ik echt helemaal vergeten
ik zit me nu in te lezen, ik moet gewoon helemaal bij het begin beginnen

ik leer nu alles over cijfertjes :)
http://code.tutsplus.com/tutorials/number-systems-an-introduction-to-binary-hexadecimal-and-more--active-10848
en als ik dat doorgeploegd heb, ga ik weer terug naar het hoofdstuk bitwise misschien snap ik het dan wel
 
Marina janssen

marina janssen

27/02/2016 23:48:51
Quote Anchor link
Thomas van den Heuvel:
Jawel.

Stel:
zwart = 1
wit = 2
rood = 4
beige = 8

Wat je wilt is zwart + wit + rood = 7.
De kat met zwart + wit + rood + beige = 15.




want 7 = 2<sup>3</sup>2<sup>2</sup>2<sup>1</sup>2<sup>0</sup>
0 1 1 1

15 = 2<sup>3</sup>2<sup>2</sup>2<sup>1</sup>2<sup>0</sup>
1 1 1 1

& ----------------------------------------------------------
0 1 1 1


Thomas van den Heuvel:


15 & 7 is nog steeds 7. Oftewel, de selectie zwart + wit + rood levert ook beesten met zwart + wit + rood + whatever op.


Ik heb er een week over gedaan, maar nu snap ik dat 15 ook 7 is.
Alleen nog niet helemaal hoe ik dat kan selecteren, maar misschien komt dat nog
Gewijzigd op 27/02/2016 23:51:55 door marina janssen
 
Thomas van den Heuvel

Thomas van den Heuvel

28/02/2016 17:04:35
Quote Anchor link
Quote:
Alleen nog niet helemaal hoe ik dat kan selecteren, maar misschien komt dat nog

Selectboxes kleuren[] maken met als waarde de unieke kleurcode, en dan, als je je zoekformulier submit (gebruikt $_GET, dat werkt doorgaans fijner) kijk je of "kleuren" ($_GET['kleuren'] dus) bestaat en tel je de waarden bij elkaar op met array_sum($_GET['kleuren'). Zoals eerder aangegeven kun je elke kleur uniek identificeren omdat elke kleurcode een waarde heeft die een macht van 2 is (1, 2, 4, 8, 16 etc.).
 
Marina janssen

marina janssen

28/02/2016 22:39:53
Quote Anchor link
Nou, het is (deels) gelukt (yeahhh!) :) Ik heb een kolom gemaakt met kleurcodes etc. Alleen wat ik niet begrijp is: waarom de paginatie de kleurcode niet kan onthouden na blz 1. Komt dat omdat het een array is?
De kleurcode wordt wel uitgelezen (opgeteld) uit de url. Ik doe precies hetzelfde als op andere pagina;s maar ik krijg array_sum() expects parameter 1 to be array als ik naar blz 2 (of verder) blader. heelp
 
Thomas van den Heuvel

Thomas van den Heuvel

29/02/2016 00:53:50
Quote Anchor link
Als je zoiets hebt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<form action="..." method="get">
...
<input type="checkbox" name="kleuren[]" id="kleuren_1" value="1"><label for="kleuren_1">zwart</label>
<input type="checkbox" name="kleuren[]" id="kleuren_2" value="2"><label for="kleuren_2">rood</label>
<input type="checkbox" name="kleuren[]" id="kleuren_4" value="4"><label for="kleuren_4">wit</label>
<input type="checkbox" name="kleuren[]" id="kleuren_8" value="8"><label for="kleuren_8">beige</label>
...
<button type="submit">zoek</button>
</form>

Dan komt dit op de volgende manier in je URL:
zoekscript.php?kleuren[]=1&kleuren[]=4&...

Je moet dan wel zorgen dat je alles op een of andere manier overneemt als er iets is aangevinkt.

Denk eraan dat niet aangevinkte checkboxen in het geheel niet worden verstuurd, je zult dus op het bestaan van $_GET['kleuren'] (of $_POST['kleuren'] als je de POST method gebruikt) moeten controleren.
 
Marina janssen

marina janssen

29/02/2016 23:45:23
Quote Anchor link
Allereerst nogmaals dank voor alle moeite die jij (en ook de anderen) nemen om te helpen php te begrijpen.

Stel ik vink grijs en wit aan. (wit= 1 en grijs =2)

Dan is de url van blz 1: kleurcodes.php?Code[]=1&Code[]=2

Maar als ik naar blz. 2 ga, (nog steeds zelfde checkboxes dus) dan is de url: kleurcodes.php?Code=3&page=2

Vraag 1: Ik snap niet waarom hij op blz 1 de ingevoerde codes exact weergeeft als Code[]=1&Code[]=2 in de url maar ze optelt als ik naar pag 2 ga. Want ik stop $Code in de query en de var_dump daarvan is 3 (op blz. 1).

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(isset($_GET['Code'])) {
     $Code = array_sum($_GET['Code']);
   var_dump($Code);
?>

Vraag 2:
Hoe krijg ik Code[]=1&Code[]=2 in de url op blz 2 ipv Code=3

Vraag 3:
Waarom blijft mn query eigenlijk leeg op blz 2 bij Code=3? De Code is 3! Ben ik nou gek???

Vragen, vragen vragen ...
 
Ward van der Put
Moderator

Ward van der Put

01/03/2016 09:46:01
Quote Anchor link
Marina janssen op 29/02/2016 23:45:23:
Dan is de url van blz 1: kleurcodes.php?Code[]=1&Code[]=2

Maar als ik naar blz. 2 ga, (nog steeds zelfde checkboxes dus) dan is de url: kleurcodes.php?Code=3&page=2

Vraag 1: Ik snap niet waarom hij op blz 1 de ingevoerde codes exact weergeeft als Code[]=1&Code[]=2 in de url maar ze optelt als ik naar pag 2 ga. Want ik stop $Code in de query en de var_dump daarvan is 3 (op blz. 1).
Dat doe je toch echt zelf, want je telt 1 + 2 op met array_sum():
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(isset($_GET['Code'])) {
     $Code = array_sum($_GET['Code']);
   var_dump($Code);
?>

Als je toch gaat pagineren, waarom sla je de keuzen van pagina 1 dan niet even op in een sessie voordat je pagina 2 toont?
 
Thomas van den Heuvel

Thomas van den Heuvel

01/03/2016 14:40:00
Quote Anchor link
vraag 1: dat doe je waarschijnlijk zelf op een of andere manier

Quote:
Als je toch gaat pagineren, waarom sla je de keuzen van pagina 1 dan niet even op in een sessie voordat je pagina 2 toont?

Omdat het een zoekformulier is. Waarbij je een resultaat op deze manier makkelijk kunt bookmarken. Je hebt dan precies alle data die je nodig hebt in je URL. Je hebt dan geen externe hulpstukken in de vorm van een sessie nodig. Deze oplossing is stateless (of iig "self contained").

vraag 2: URL opbouwen / uitschrijven; plak voor elke geselecteerde kleurcode <separator>code[]=<kleurcode> vast aan de querystring. Waarbij <separator> ofwel een ? is, of een & en <kleurcode> de geselecteerde kleurcode, dit kan met een eenvoudig loopje die $_GET['Code'] doorloopt, nadat je hebt gecontroleerd of $_GET['Code'] bestaat.

vraag 3: waarschijnlijk omdat $_GET['Code'] op dat moment geen array meer is. Het resultaat van array_sum($_GET['Code']) levert op dat moment niks op (of liever gezegd NULL, wat mogelijk nog omgezet wordt naar het cijfer 0). Dit produceert tevens een warning. Je zou altijd moeten ontwikkelen met het ingeschakeld zijn van het melden + weergeven van fouten. Zet de bovenstaande code aan het begin van scripts waar je aan ontwikkelt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'stdout');
?>

Dan worden dit soort fouten meteen evident.
 
Marina janssen

marina janssen

06/03/2016 19:06:21
Quote Anchor link
edit: Alles werkt nu.

Maar ik snap een ding nog niet helemaal mbt het selecteren.
Als ik bijv. rood en wit invul in het formulier en opvraag met select, dan krijg ik alleen de katten die daar exact aan voldoen. Dus de katten die rood/wit zijn en de katten die wit/rood zijn.
Op zich kan ik daar prima mee leven maarrrrr je zei ergens dat de rood/wit/zwarte katten er dan ook uit zouden rollen maar dat gebeurt niet. Dus de vraag is: heb ik iets niet goed begrepen of niet goed uitgevoerd?
dit is mn query
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
if(isset($_GET['Code'])) { $Code = array_sum($_GET['Code']);

$sql = "SELECT Nummer FROM katten WHERE Code = $Code";
    $records = mysqli_query($conn, $sql);
    $rows = mysqli_num_rows($records);
    $pages = ceil($rows / $perpage);
    $rec = "SELECT Nummer, Naam, Kleur, Geslacht, Vacht, Ras, Bijzonderheden, DATE_FORMAT(Datum,'%d/%m') AS Datum, FROM katten WHERE Code ='$Code' ORDER BY Nummer_id DESC LIMIT $start, $perpage";

    
$result = mysqli_query($conn, $rec);
etc etc
 ?>
Gewijzigd op 06/03/2016 23:27:32 door marina janssen
 

Pagina: 1 2 volgende »



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.