Checkbox checked MySQL

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET Developer C# Web-development

Bedrijfsomschrijving Onze klant levert kwaliteitsdienst binnen zijn sector, het niveau van de Nederlandse sector is internationaal bekend! De organisatie richt zich op het waarborgen van deze kwaliteit en voorziet een groot aantal klanten in het MKB van jaarlijkse keuringen. Je komt te werken binnen een team van ongeveer 10 medewerkers waarbij de focus ligt op de doorontwikkeling en het implementeren van oplossingen in het applicatielandschap. Binnen deze organisatie werken ze met diverse Scrum/Agile teams, het is dan ook belangrijk dat je ervaring hebt met deze werkwijze en het leuk vindt om op deze manier te werk te gaan. Het betreft

Bekijk vacature »

Customer Consultant

Ben jij die creatieve allround Customer Consultant die wij zoeken? Werk je graag samen met anderen aan oplossingen voor uitdagende en complexe problemen?En geeft het je voldoening om anderen te helpen om optimaal gebruik te maken van software oplossingen? Dan zoeken wij jou! CustomerConsultant ’s-Hertogenbosch Wat ga je doen? Je verantwoordlijkheden bestaan uit het verlenen van support, het adviseren van klanten over het gebruik van zowel de back-end als de front-end applicatie, het assisteren bij implementaties en development projecten, het assisteren van de klanten in het bijhouden van hun database, het analyseren van klantprocessen en het vertalen daarvan in eisen

Bekijk vacature »

Collega SRE gezocht

OSSO zoekt een fijne collega met: Veel (5+ jaar) kennis + ervaring van Linux systeembeheer. Basis programmeervaardigheden. Tevens een troubleshooter die doorgaat totdat de situatie (en bijbehorende oplossing) 100% helder is. Wat wordt er van je verwacht en wat ga je doen? Onderdeel zijn van het Operations team. Opzetten en beheren van klantomgevingen. Als het onder Linux draait, dan beheert OSSO dat. Dit omvat het opzetten van highly available clusters, zoals bijvoorbeeld – maar zeker niet beperkt tot alleen – Galera, Elasticsearch, Kubernetes. Up to date houden, beveiligen en hardenen van servers. Niet te bang zijn. Je mag fouten maken,

Bekijk vacature »

Software Ontwikkelaar

Functiebeschrijving Xelvin is op zoek naar een Software Ontwikkelaar! Ben jij een techneut die zich graag bezig houdt met automatisering binnen de machinebouw en graag samen met zijn collega's zich sterk maken en technologische kennis wilt inzetten op diverse innovatieve projecten? Lees dan vooral verder de onderstaande vacature! Waar hou jij je mee bezig? Je zult voornamelijk verantwoordelijk zijn voor het ontwerpen, ontwikkelen en testen van diverse software. Hierbij werk je met een érg gemotiveerd en multidisciplinair team samen waarbij jouw kennis zal bijdragen aan revolutionaire oplossingen binnen de vision technologie bij (inter) nationale klanten. Verder wordt van je verwacht

Bekijk vacature »

React Native Developer

Mobile Developer - 40 hours Are you a mobile or front-end developer and are looking to work on great (social) projects that matter? Are you looking to extend your skillset, develop ground-breaking software and work together with a great people in small teams? Are you interested in using the latest technologies and dive deeper into the world of Blockchain and Artificial Intelligence? Our respected client, is challenging the status quo by using blockchain technology and artificial intelligence is looking for an experienced Mobile Developer. Your impact as Mobile Developer You have an impact on the inhouse developed applications as part

Bekijk vacature »

Medior PHP Developer

Bedrijfsomschrijving De organisatie is een marktleider op het gebied van Software ontwikkeling omtrent medewerker applicaties. Hiermee helpen ze klanten met het optimaliseren van bedrijfsprocessen en verduurzamen van de bedrijfsvoering. Innovatie en ontwikkeling staat daarom dan ook hoog in het vaandel. Je collega's hebben een open, informele werksfeer gecreëerd waar de dialoog altijd kan worden aangegaan. Als PHP developer ga je aan de slag met het realiseren van web applicaties on-premise en in de Cloud. Je schrijft innovatieve, maar ook robuuste codes en houdt hierbij rekening met Security aspecten. De code die je schrijft en de koppelingen die jij realiseert hebben

Bekijk vacature »

Power BI Developer

De Power BI Developer die goed op deze aanvraag zou aansluiten is communicatief vaardig. Hij of zij vindt het leuk om een onervaren team te begeleiden en te coachen. Daarnaast wordt er van deze Developer verwacht dat hij/zij data kan ontsluiten. Projectdetails: Startdatum: Medio december Projectduur: 3 maanden, met optie tot verlenging Uren per week: 32-40 uur Locatie: remote Wat is jou profiel? Kennis van Power BI Kennis van AWS (DynamoDB/Lambda functions/API Gateway/S3) and/or Microsoft Azure Kennis van Databases and REST API's (JSON, XML) Ben je geïnteresseerd in deze rol of ken je iemand die mogelijk interesse heeft in dit

Bekijk vacature »

Senior OutSystems Developer / International enviro

Bedrijfsomschrijving For our international client based in Eindhoven area, we are looking for a senior OutSystems Developer. This company is a listed company with offices and plants all over the world. The company offers great experiences and exposure with people from different and unique cultures. They describe themselves as an innovative, professional and sustainable firm. Their goal is to provide for the generations to come. As Outsystems Developer you will be working in an international environment with approximately 15 direct colleagues, consisting of developers, integration specialists and application engineers. This Applications team is a very close and hard working team,

Bekijk vacature »

.NET Developer / Angular / React

Bedrijfsomschrijving Als onderdeel van een grote IT-dienstverlener is deze organisatie nu gegroeid tot een organisatie van bijna 30 man groot. Iedereen binnen deze organisatie houdt zich bezig met het ontwikkelen, beheren, onderhouden van bedrijfskritische applicaties. De organisatie ontwikkelt applicaties voor o.a. diverse grote zorgverzekeraars, maar ook de wat kleinere lokale bedrijven worden door deze organisatie ondersteund. In tegenstelling tot de moederorganisatie, werken de medewerkers bij deze organisatie gemiddeld drie tot vier dagen in de week gewoon op het eigen kantoor in Utrecht. Samen met een vast team ben je dus verantwoordelijk voor verschillende projecten die je veelal op één en

Bekijk vacature »

.NET Developer Datawarehouse

Werk jij als software developer het liefst met uitdagende systemen? Wil jij je steentje bijdragen aan een betere en efficiëntere zorg? Dan kun jij je bij onze vestiging in Amsterdam volledig uitleven als .NET Developer Datawarehouse. Jouw baan Je ontwerpt, ontwikkelt, ondersteunt en onderhoudt je eigen Datawarehouse module binnen HiX, onze ICT-totaaloplossing voor de zorg. Je schrijft objectgeoriënteerde code (we werken met Microsoft technologie, wat betekent dat je veel met C# gaat werken), speurt naar verbeteringen, werkt aan vernieuwende projecten, doet code reviews en voert testen uit. Een uiterst verantwoordelijke job, want dankzij jouw software kunnen zorginstellingen hun informatie behoeften

Bekijk vacature »

Functioneel beheerder HR-IT

Functioneel beheerder HR-IT Geplaatst op 9 november 2020 , reageren tot en met 25 november 2020Breda 0,8 - 1,0 fte Solliciteer direct Met jouw scherpe en innovatieve blik help jij met de optimalisatie, doorontwikkeling en het beheren van de HR-systemen en het verder professionaliseren van HR-managementinformatie. Mooi werk De Avans Ambitie 2025 is vastgesteld, de visie op haar toekomstig onderwijs. Flexibel werken aan het realiseren van klantwaarde en een IV-strategie die dat ondersteunt is één van de belangrijke bouwstenen. HR-systemen en data spelen hierbij een cruciale rol. Vanuit het Avansbrede digitaliseringsprogramma worden verschillende projecten opgepakt. Zo loopt er een aanbesteding

Bekijk vacature »

DevOps Engineer Welkomstbonus € 5.000,-

DevOps Engineer senior Welkomstbonus van € 5.000,- Bij T2 zorgen we goed voor elkaar en doen wij leuke dingen met leuke mensen. We zorgen voor uitdagende opdrachten zodat jij jezelf onbeperkt kan blijven ontwikkelen. Ben jij een ervaren systeembeheerder DevOps en wil je het beste uit jezelf halen? Dan ben je van harte welkom bij T2 en ontvang je onze welkomstbonus ter waarde van € 5.000,-. Er werken leuke mensen bij T2, die op een professionele en informele wijze met hun carrière en collega’s omgaan. Dat is de basis voor succes! Het is vanzelfsprekend dat je met de nieuwste technieken

Bekijk vacature »

Mobile App Developer

Ons Mobile-ontwikkelteam zoekt een gedreven Mobile App Ontwikkelaar. Ben jij analytisch en heb je passie voor het ontwikkelen van apps? Dan zijn wij op zoek naar jou! Jouw baan ChipSoft heeft al diverse apps uitgebracht en het aantal gebruikers hiervan neemt snel toe. Je kunt hierbij denken aan apps voor verpleegkundigen, thuiszorgmedewerkers, de sterilisatieafdeling en - natuurlijk - de artsen zelf. Door jouw hands-on-mentaliteit, eigenwijsheid en technisch inzicht kun je nauwkeurig herbruikbare software schrijven. Die software sluit naadloos aan op onze ‘back end’ (HiX, onze ICT-totaaloplossing voor de zorg). Samen met je collega’s ben je verantwoordelijk voor het ontwerpen en

Bekijk vacature »

Back-end Developer

Back-end Developer Opzet internetbureau, Santpoort-Zuid Opzet is een veelzijdig internetbureau, waar creatie en techniek hand in hand gaan. We ontwerpen en ontwikkelen voor diverse grote opdrachtgevers gebruiksvriendelijke sites, apps en applicaties. Opzet groeit. Daarom zijn we op zoek naar een ontwikkelaar die graag in teamverband werkt. Iemand die proactief meedenkt, de beste oplossingen zoekt en op de hoogte is van de nieuwste ontwikkelingen. We hebben per direct plek voor een: Back-end Developer Voor 32 - 40 uur per week Als Back-ender van Opzet ben je in staat om mooie oplossingen te bedenken en optimale code te schrijven voor sites en

Bekijk vacature »

Medior Front-end Developer

As a medior Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a Medior Front-end Developer at Coolblue? As a Medior Front-end Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX designer to pick up stories. You get energy from coming up with creative solutions and are happy to present this within the team. You are also proud of your work and welcome all feedback. "Want to become a Medior Front-end Developer at Coolblue? Else de Boer explains how to

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

05/12/2020 12:03:07
 
- 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.