Checkbox checked MySQL

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Front end developer Automotive Angular

Functie Als Senior Front end developer kom je te werken in een team van 11 developers. 9 van de 11 focussen zich op back end, welke is geschreven in Java, en 2 op de front end waarbij er gebruik wordt gemaakt van Typescript en Angular. De focus in deze rol ligt op 2 aspecten; doorontwikkeling van de eigen tooling en gebruik van de tooling t.b.v. klantprojecten. Momenteel zijn ze in de afrondende fase van een project waarbij ze het gehele verkoopproces van nieuwe auto’s anders ingeregeld hebben voor een grote dealer in Nederland. Waarbij Auto’s normaliter pas verkocht werden in

Bekijk vacature »

Front-end Developer

Functie omschrijving Wij zijn op zoek naar een Front-end Developer! Als Front-end Developer binnen dit softwarebedrijf ga je de frontends voor zowel je eigen interne projecten als die voor klanten opzetten, onderhouden en uitbreiden. Je zet ideeën om naar mooie successen voor de klanten. Dat is in een notendop wat je gaat doen! Wat kun je verwachten? Je werkt aan de doorontwikkeling van bestaande maatwerkapplicaties. Bijvoorbeeld wanneer de klant de applicatie wil uitbreiden met een nieuwe feature; Samen met het team van backenders en desginers zet je nieuwe ideeën van klanten om naar mooie oplossingen; Je werkt met verschillende frameworks.

Bekijk vacature »

PHP Developer Symfony

Dit ga je doen Ontwikkelen van Product Informatie Management (PIM) systemen; Werken aan zowel grotere als kleine projecten voor toonaangevende klanten binnen o.a. de retail. Hier ga je werken Als PHP Developer kom je te werken binnen een vooruitstrevende organisatie die Product Informatie Management (PIM) systemen levert aan hun klanten. Hun klanten zijn toonaangevende bedrijven binnen o.a. de retail. De organisatie zit gevestigd in regio Zwolle en bestaat uit zo'n 35 medewerkers, waarvan 30 IT. Je komt te werken binnen één van de zelfsturende development teams welke ieder verantwoordelijk zijn voor hun 'eigen' klanten. Jouw team bestaat uit 6 backend

Bekijk vacature »

Full Stack PHP Developer

Functieomschrijving Ervaren PHP Developer gezocht! Wij zijn op zoek naar een ervaren PHP Developer die het IT team van een organisatie in de regio Ermelo gaat versterken. Voor deze functie zijn we op zoek naar een enthousiaste en breed georiënteerde IT-er die deze innovatieve organisatie nog een stap verder gaat brengen. Wij zijn op zoek naar iemand die communicatief goed is en die zelfstandig problemen op kan lossen. Je bent verantwoordelijk voor het samenwerken met een externe partij het is hierbij jouw taak om deze partij uit te dagen op het geleverde werk. Het schrijven van concepten aan de AI

Bekijk vacature »

Mendix Ontwikkelaar - Vernieuwen van het applicati

Bedrijfsomschrijving De ontwikkelingen in de transportsector gaan razendsnel. Bij ons kun je een belangrijke rol spelen in deze sector. We streven ernaar om onze klanten te ontzorgen op het gebied van continuïteit en veiligheid met innovatieve producten en diensten. We willen dat onze klanten de veiligste vervoerders van Europa worden. Ons team werkt hard om deze ambitieuze doelstellingen te bereiken en we bieden een motiverende werkomgeving aan. We zijn op zoek naar zelfstarters met een focus op resultaat en beslissingsbevoegdheid. Functieomschrijving Als Mendix ontwikkelaar bij deze organisatie heb je een gevarieerde baan. Het applicatielandschap wordt vernieuwd en de “schade en

Bekijk vacature »

Software Developer Mendix / Maatschappelijk Betrok

Dit ga je doen Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Werken met Scrum methodiek; Ontwikkelen van vooruitstrevende oplossingen; Meedenken over nieuwe applicaties en ontwikkelingen; On the job eigen maken van de Mendix omgeving. Hier ga je werken Deze dynamische en snelgroeiende organisatie begeeft zich in de recyclingbranche. Zij nemen op duurzame en efficiënte manier de recycling op zich. Vanwege hun snelle groei zijn zij op zoek naar een young professional die zich graag wilt ontwikkelen als Mendix Developer. Je komt te werken binnen een IT team van +/- 15 medewerkers. Het huidige ‘vaste’

Bekijk vacature »

Back end developer PHP

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

Medior Java developer

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 »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Ervaren Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als ervaren developer zul je hiernaast ook andere developers assisteren en waar nodig de leiding nemen in het project.

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 »

Full Stack Developer

Ben jij een kei van een full-stack developer? Heb je ambitie om te groeien en jezelf te ontwikkelen binnen een ambitieus bedrijf? Gaat jouw hart sneller kloppen van transpilers of frameworks zoals Angular, Vue of React? Dan ben jij de persoon die wij zoeken! Voor onze opdrachtgever zijn wij op zoek naar een full-stack developer om onderdeel te zijn van een team dat bestaat uit gedreven developers. Ieders met hun eigen specialiteiten en kennis van de projecten en behoeften vanuit de product owners. We zoeken iemand die met zijn/haar huidige competenties en domeinen dit team wil begeleiden, stimuleren en tevens

Bekijk vacature »

Medior Java developer

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 »
Bryan De Baar

Bryan De Baar

28/01/2020 21:49:30
Quote Anchor link
Goede avond,


Kan iemand mij helpen met het aanvinken van checkboxes vanuit MySQL?

De database

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
Players
+------+------+
|  ID  | NAME |
+------+------+
|  1   | Lisa |
|  2   | Ben  |
|  3   | Ruud |
+------+------+

TEAMS
+------+------+
|  ID  | TEAM |
|  1   | Rood |
|  2   | Geel |
|  3   | Blauw|
|  4   | Groen|
+------+------+


Match
+------+------+
| PID  |  TID |
|  1   |   3  |
|  2   |   1  |
|  2   |   4  |
|  3   |   2  |
+------+------+

Wat ik als uitkomst zou willen als ik de data van 'Ben' fetch
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<label><input type="checkbox" value="1" checked="checked">Rood</label>
<label><input type="checkbox" value="2">Geel</label>
<label><input type="checkbox" value="3">Blauw</label>
<label><input type="checkbox" value="4" checked="checked">Groen</label>

Welke query pas ik toe en laat ik PHP dit als resultaat geven?

Ik weet dat ik zoiets als INNER JOIN moet gebruiken :)
Gewijzigd op 28/01/2020 21:50:12 door Bryan De Baar
 
PHP hulp

PHP hulp

18/04/2024 10:29:09
 
- Ariën  -
Beheerder

- Ariën -

28/01/2020 22:49:32
Quote Anchor link
Voor het aanvinken moet je kijken of de verwachte ingevoerde waarde (groen) overeenkomt met de SQL-query.
Je moet nog wel een mysqli_query() en een mysqli_fetch_assoc() gebruiken, maar dat kan je vast wel proberen in te bouwen. Bekijk ook even deze link: https://www.w3schools.com/sql/sql_join_inner.asp

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$check
= (($_GET['kleur'] == $data['kleur'])? 'checked="checked"' : NULL);
?>

<label><input type="checkbox" value="4" <?php if(isset($check)) { echo $check }; ?>>Groen</label>

Edit: isset() toegevoegd, en een linkje naar W3schools
Gewijzigd op 28/01/2020 23:40:32 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

28/01/2020 23:42:36
Quote Anchor link
En als je dit ook op een zinnige manier wilt ver/bijwerken dan zul je die checkboxen ook een naam moeten geven?

Mogelijk is het dan een idee om de teams in een array te stoppen, met als key de id's van de teams. De values doen er niet echt toe, omdat een niet gecheckte checkbox in het geheel niet gePOST wordt.

Quote:
Ik weet dat ik zoiets als INNER JOIN moet gebruiken :)

Nou niet per se. Is het mogelijk dat iemand geen onderdeel uitmaakt van een team? Initieel is dit misschien het geval? In dat geval zou je met een INNER JOIN geen resultaten krijgen? Ik denk dat je -wat je hier ook precies mee wilt doen, zie de volgende paragraaf- verder komt met een LEFT JOIN.

En waarom is de tabel "Match" enkelvoud? Wat betekent deze tabel precies? Als het echte wedstrijden zouden zijn dan zou ik verwachten dat iemand meerdere keren een "match" voor een "team" zou kunnen hebben? Is dit toevallig iets anders, bijvoorbeeld in welk team iemand opgesteld kan/mag staan? Dan zou ik eerder een titel als "Lineups" of "Team Members" verwachten ofzo. En dan zou het ook logischer zijn dat een speler-team combinatie maximaal één keer voorkomt in die tabel.

De "Players" tabel is eigenlijk meer een "personen" tabel denk ik? En een speler is meer iemand die in een bepaalde wedstrijd voor een bepaald team speelt? En daarmee ligt ook indirect vast tot welk(e) team(s) iemand behoort? Meerdere aanpakken mogelijk. Hoe je dit vormgeeft hangt af van de regels in jouw specifieke situatie. Maar de opzet van en relaties tussen de tabellen zouden dit wel moeten weerspiegelen.
 
Bryan De Baar

Bryan De Baar

28/01/2020 23:54:06
Quote Anchor link
Beste Ariën en Thomas,


Ik heb het een en ander geprobeerd en heb de tabel match veranderd naar lineup.
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
<?php
$sql
        = "
            SELECT
                players.id ppid,
                players.name,
                teams.id ttid,
                teams.team
            FROM
                lineup
            JOIN players ON lineup.pid = players.id
            JOIN teams ON lineup.tid = teams.id
            WHERE players.id=2
            "
;
$result        = mysqli_query($connection, $sql);
while($row = mysqli_fetch_assoc($result)){
    echo $row['ppid'].' '.$row['name'];
    echo '<label><input type="checkbox" value="'.$row['ttid'].'">'.$row['team'].'</label><br>';
}

?>

Het resultaat hiervan is
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
2 Ben <label><input type="checkbox" value="1">Rood</label>
2 Ben <label><input type="checkbox" value="4">Groen</label>


Hoe krijg ik nu alle teams qua checkboxes en alleen rood en groen geselecteerd als ik fetch op de player id 2?
Gewijzigd op 28/01/2020 23:54:29 door Bryan De Baar
 
- Ariën  -
Beheerder

- Ariën -

28/01/2020 23:58:55
Quote Anchor link
Heb je mijn code al gezien? Je wilt immers een vergelijking doen met iets wat in je database staat.
Gewijzigd op 28/01/2020 23:59:18 door - Ariën -
 
Bryan De Baar

Bryan De Baar

29/01/2020 00:03:54
Quote Anchor link
Waar komt die $_GET vandaag Ariën?
 
- Ariën  -
Beheerder

- Ariën -

29/01/2020 00:08:07
Quote Anchor link
Het is een voorbeeld die ik gaf. $_GET komt uit de URL (www.example.org?kleur=groen). Maar het kan net zo goed ook een POST via een formulier zijn.
Gewijzigd op 29/01/2020 00:09:34 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

29/01/2020 00:33:24
Quote Anchor link
Als je enkel het profiel van "Ben" bekijkt dan zou je gemakshalve enerzijds de gegevens van "Ben" kunnen ophalen, en anderszijds een lijst van teams, en de teams waarin hij staat opgesteld. Je hoeft dit niet per se tot één gigantische query te combineren.

Voor het genereren van de teamlijst neem je de teams-tabel als uitgangspunt, want je wilt deze altijd volledig uitdraaien. Het staat niet vast of Ben voorkomt in een team (of wat voor team dan ook) dus het is nogal ongewis of deze (uberhaupt) voorkomt in de lineups-tabel (meervoud is misschien beter?). Als je in zo'n situatie zit (alle resultaten van A, mogelijk niet aanwezig in B) dan kun je vrijwel altijd een A LEFT JOIN B aanpak hanteren. Je krijgt dan altijd alle resultaten van A terug, en als de conditie voor B niet matcht, dan krijg je een NULL-waarde terug.

Je query wordt dus zoiets:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
SELECT t.id, t.name, l.team_id
FROM teams t
LEFT JOIN lineups l ON (l.team_id = t.id AND l.player_id = 2)

En die 2 (het id van Ben) heb je dan al uit je vorige query gevist.

Dit levert:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
+----+-------+---------+
| id | name  | team_id |
+----+-------+---------+
|  1 | Rood  |       1 |
|  4 | Groen |       4 |
|  2 | Geel  |    NULL |
|  3 | Blauw |    NULL |
+----+-------+---------+
4 rows in set (0.00 sec)

Hierbij is het belangrijk dat je het "l.player_id = 2" in het ON-gedeelte zet, anders vind je (vanzelfsprekend) geen resultaten voor team Geel of Blauw.

Vervolgens kun je deze resultaten aflopen en indien het team_id van de lineup verschilt van NULL dan houdt dit in dat Ben hier in de opstelling staat en kun je dit item aanvinken.

Dus zoiets:
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
$res
= $db->query(
    'SELECT t.id, t.name, l.team_id
    FROM teams t
    LEFT JOIN lineups l ON (l.team_id = t.id AND l.player_id = 2)'

);
while ($row = $res->fetch_assoc()) {
    $checked = ($row['team_id'] === NULL ? '' : ' checked="checked"');
    ?>
<label>
        <input type="checkbox" name="teams[<?php echo $row['id']; ?>]"<?php echo $checked; ?>><?php echo $row['name']; ?>
    </label><?php
}
?>

NB: output escaping hier voor de leesbaarheid even achterwege gelaten.

Volledige SQL voor snelle test (minus relaties tussen tabellen):
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
CREATE TABLE teams (
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO teams (name) VALUES ('Rood'), ('Geel'), ('Blauw'), ('Groen');

CREATE TABLE lineups (
team_id INT(10) UNSIGNED NOT NULL,
player_id INT(10) UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO lineups (team_id, player_id) VALUES (3, 1), (1, 2), (4, 2), (2, 3);

SELECT t.id, t.name, l.team_id
FROM teams t
LEFT JOIN lineups l ON (l.team_id = t.id AND l.player_id = 2)
Gewijzigd op 29/01/2020 00:42:02 door Thomas van den Heuvel
 
Bryan De Baar

Bryan De Baar

30/01/2020 13:30:33
Quote Anchor link
Hi Thomas,


Thanks!!! Dit is precies wat ik zocht en begrijp nu beter hoe dit in elkaar steekt!


Hartelijk dank :)
 



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.