Checkbox checked MySQL

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP Full Stack developer

Ter uitbreiding van ons team in Lobith zijn wij op zoek naar een PHP developer M/V Full-time (32-40u) Als groothandel zijn wij al 20 jaar een begrip in de computerwereld. Wij zijn distribiuteur van diverse grote merken en leveren voornamelijk aan wederverkopers in Nederland en België. Als PHP fullstack developer ontwikkel je nieuwe functies voor onze website en inhouse-applicaties. Daarnaast willen wij het huidige CRM systeem stap voor stap vervangen met een naar onze wensen ontwikkeld systeem. Het is dus jouw taak om dit nieuwe systeem te ontwikkelen. Wat verwachten we van jou? Je bent helemaal thuis in PHP, CSS,

Bekijk vacature »

Leiden centraal zoekt PHP developer

Bedrijfsomschrijving Deze fullservice internet organisatie zoekt een PHP developer die ruime ervaring heeft met frameworks. Ze bouwen hier webapps voor verschillende branches waaronder non-profit organisaties en verenigingen. Het is een frisse, jonge en dynamische organisatie die diverse mooie klanten heeft in verschillende branches. De projecten waar je aan werkt eisen hoge kwaliteit op zowel technisch als creatief vlak. 90% van de projecten is maatwerk en die vragen dan ook allemaal een andere aanpak. Met welke technieken en hoe je het project gaat aanvliegen bepaal jij samen met het team en de klant. De klant heeft een wens die jij gaat

Bekijk vacature »

PHP/JAVA Developer

Wie zijn wij? Wireless Value ontwikkelt, produceert en verkoopt producten waarmee meetwaarden van sensoren draadloos kunnen worden overgestuurd naar plaatsen waar verdere bewerking en bewaking kan plaatsvinden. Wireless Value levert een familie van draadloze sensoren, basisstations (ontvangers) en toepassingen voor bediening en monitoring van processen en richt zich op de marktsegmenten industrie, utiliteit, energie en agri. Wie ben jij? Jij weet als geen ander wat je doet als je als PHP/JAVA ontwikkelaar aan de slag gaat, maar deze functie heeft bij ons ook andere verantwoordelijkheden en bevoegdheden. Natuurlijk ben jij het merendeel van je tijd bezig met applicatie ontwikkeling zoals

Bekijk vacature »

Oracle BI Developer Automotive Internationaal

Bedrijfsomschrijving Deze organisatie is internationaal actief binnen de zakelijke dienstverlening en heeft de kwaliteit van de IT afdeling hoog in het vaandel staan. Al vanaf de oprichting, meer dan 20 jaar geleden, heeft de IT afdeling alle systemen in eigen beheer en worden de eigen applicaties inhouse ontwikkeld in onder andere Oracle, Java en OutSystems. Deze applicaties worden in meer dan 15 Europese landen gebruikt en de volledige ontwikkeling hiervan vindt plaats in het hoofdkantoor gevestigd in regio Utrecht. Vanuit hier worden 15 landen (ruim 1500 gebruikers) voorzien van server based computing. Om dit mogelijk te maken wordt er gebruik

Bekijk vacature »

Medior PHP developer

Ben jij nu of op korte termijn beschikbaar voor een nieuwe freelance PHP klus? Neem dan contact met mij op. Ik zoek voor een klant naar een freelance PHP back-end ontwikkelaar. Wensen vanuit klant: - Ervaren back-end PHP ontwikkelaar - SQL kennis - Ervaring met webservices oriented architectuur Algemene informatie: - Start: voorkeur per direct - Uren: bij voorkeur 40 uur - Locatie kantoor: Amersfoort - Remote: momenteel volledig remote, zal later ook deels mogelijk blijven. Heb jij interesse en wil je meer weten over deze klant? Laat een reactie achter met jouw meest recente cv + uurtarief. Alvast bedankt!

Bekijk vacature »

Next-level Java Developer functie, veel verantwoor

Bedrijfsomschrijving Mobile Development en Ops Engineering gaan hand in hand bij deze organisatie dat een hoog verantwoordelijkheidsgevoel draagt. Als organisatie ontwikkelt zij dan ook veelal mobiele applicaties ter inspiratie en ondersteuning van belangrijke sectoren in Nederland. Met het technische team van gepassioneerde developers en engineers voeren ze dagelijks veelal diverse, inspirerende en complexe werkzaamheden uit waarbij zij als Java ontwikkelaar interessante software realiseert. Door gebruik van innovatieve software en de nieuwste platformen binnen de sector is deze klant dan ook zeker als vooruitstrevend te betitelen waar zijn enorm veel waarde aan hecht. Functieomschrijving Je werkt aan innovatieve producten binnen een

Bekijk vacature »

Ervaren Business Intelligence ontwikkelaar

Bedrijfsomschrijving Wil je werken voor een bedrijf die organisaties helpt door middel van innovatieve en ontwikkelende technologieën? Wil je werken voor klanten met aanzien in het midden en groot bedrijfssegment? Dan ben je bij deze opdrachtgever aan het juiste adres! Ze zoeken een Medior BI ontwikkelaar met inlevingsvermogen in de klant en begrip van bedrijfsprocessen. Je zult hier persoonlijke begeleiding en trainingen bij krijgen om jezelf te blijven ontwikkelen. Daarnaast werk je binnen een dynamische, Work Hard – Play Hard werkomgeving met gezellige, ambitieuze collega’s die je stimuleren. Functieomschrijving Voor deze klant ben ik hard zoekende naar een ervaren en

Bekijk vacature »

Java Developer binnen een innovatieve organisatie

Bedrijfsomschrijving Voor een internationaal bedrijf dat actief is rondom high-end beveiliging van telecomnetwerken ben ik opzoek naar een Java Developer. Het aantal jaren werkervaring maakt niet te veel uit, aangezien ze op alle levels wel versterking kunnen gebruiken. Ben je dus een starter, medior of senior Java Developer? Dan is dit een mogelijk interessante rol voor jou. Men werkt hier aan in Java ontwikkelde (veiligheid)oplossingen op het gebied van netwerken en beveiliging van voice en video. Grote hoeveelheden data spelen een rol. De organisatie kent zo`n 55FTE en de cultuur valt te omschrijven als gedreven, prestatiegericht en open. Naast de

Bekijk vacature »

Java Developer; nieuwste technieken + groeimogelij

Bedrijfsomschrijving Ben jij op zoek naar een nieuwe stap als Java developer waar jij binnen een informele en inspirerende setting toffe webapplicaties kan gaan ontwikkelen waarbij je gebruik maakt van de allernieuwste technieken? Bijvoorbeeld Java11, AWS, DevOps? En dat allemaal van een vaste, mooie werkplek midden in Amsterdam? Lees dan snel verder! Mijn klant in Amsterdam is namelijk wegens aanhoudend succes aan het groeien en ze zijn op zoek naar meerdere (medior) Java developers met minimaal 1 jaar werkervaring. Met ongeveer 25 personen (merendeel is IT) werken ze dagelijks aan de ontwikkeling van innovatieve webbased oplossingen voor bedrijven die hiermee

Bekijk vacature »

Xamarin C# Developer

As an Xamarin C# Developer, you make sure our cross platform mobile apps give our employees the best possible way to manage Coolblue operations. How do I become a Xamarin C# Developer at Coolblue? Your specialty is either C# OR mobile app code, and you enjoy working with Xamarin. You like to do some pair programming with your colleagues, to guarantee higher quality in the codebase. Besides that you think about technical decisions like architecture, tools and processes. You also keep an eye on the performance of your app and you analyse with your team how to improve it. Following

Bekijk vacature »

.NET Developer / C# / Financiele sector

Bedrijfsomschrijving De organisatie is werkzaam in de financiële dienstverlening met meer dan 200 medewerkers en meer dan 250.000 eind gebruikers is het een van de grotere binnen haar branche. Je komt te werken in een team waarmee je verantwoordelijk bent voor het ontwikkelen en onderhouden van de financiële applicaties binnen de organisatie, denk hierbij aan het bouwen en onderhouden van portalen. Binnen dit team zal jij de schakel worden die verantwoordelijk is voor de ontwikkeling aan de back-end. Vind jij het prettig om software te ontwikkelen met C#, SQL, MVC, en WCF? Ken jij alle kneepjes van Agile werken? Staat

Bekijk vacature »

PHP ontwikkelaar

Altijd al graag met de nieuwste technieken willen werken. Bekijk dan deze vacature. Voor onze klant zijn wij op zoek naar een Medior of Senior PHP ontwikkelaar. Als backend developer werk je binnen een van de multidisciplinaire SCRUM-teams. Er is flink wat ruimte voor eigen inbreng, kennisdeling, creativiteit en je krijgt veel verantwoordelijkheid. Zij werken volgens de TDD en Solid principes. Zij werken met asynchrone berichten om de datastores van de microservices te vullen. Hiermee creëren zij een perfect viewmodel voor onze graphQL endpoints. Zij draaien het geheel op containers in de cloud om zo snel mogelijk te kunnen schakelen.

Bekijk vacature »

Interaction Designer

Geen scherm ontwerpuitdaging is je te gek en je krijgt energie van klanten die tevreden met jouw oplossingen aan de slag zijn. Doordat je regelmatig contact hebt met klanten door het bijwonen van klantsessies of gebruikerstesten, ken je de wereld van je gebruikers en weet alles over UI interactie en patronen. Je werkt graag aan het opzetten en invullen van een gebruikersinteractie, waarbij aandacht voor detail en bruikbaarheid voorop staan. Accountancy is een complex vakgebied, waarbij je veel te maken krijgt met steeds veranderende regelgeving waar we met onze software op aan moeten haken. Het geeft jou een kick als

Bekijk vacature »

Front End Developer (Freelancer)

General Description: Philips Digital Cognitive Diagnostics is a new business within the Philips HealthWorks venture organization. The venture is tasked with developing a new "software only" product called IntelliSpace Cognition. This new product, which is a class II medical device, will help neurologists in assessing the cognitive performance of people with a neuro (degenerative) disease. The initial market for IntelliSpace Cognition is the US. The venture is currently seeking for a Frontend Developer. The position is based in Eindhoven, the Netherlands. Requirements: - Design, test, develop, deploy, maintain and improve software assets - Deliver high quality code thru hands on

Bekijk vacature »

Senior .Net Developer - Kartrekker Financieel Azur

De internationale en innovatieve FinTech is marktleider in financiële reporting en trends software en services en breidt wegens groeiend succes haar producten en development teams verder uit. Hiervoor zoeken ze Senior .Net C# Developer die mogelijk ook het nieuw te vormen team technisch zal aansturen. De huidige oplossingen staan; aan jou de taak samen met de huidige Tech Lead te kijken naar optimalisatie en innovatie van het platform. Daarnaast breid je de tooling met je team uit en maak je de stap om het nieuwe development team te vormen en sturen als nieuwe Tech Lead. Met hen bouw je aan

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

02/12/2020 10:37:20
 
- 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.