Stom checkbox probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fullstack JavaScript Developer Webapplicaties

Bedrijfsomschrijving Voor deze organisatie ben ik op zoek naar een getalenteerde Fullstack JavaScript Developer. Ze is een snelgroeiend software development agency dat zich richt op het ontwikkelen van moderne webapplicaties en complexe systemen voor haar klanten. Ze is gevestigd onder de rook van Utrecht en heeft als doel om tot de top van de Nederlandse agencies te behoren. Deze organisatie maakt softwareoplossingen voor verschillende soorten bedrijven. Innovatie staat hoog in het vaandel en je zult dus met nieuwe technieken aan de slag gaan. Ze hebben klanten in vele branches zitten, zoals retail, finance, gezondheid en onderwijs. De diverse klanten zorgen

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Senior Front end developer

Functie Wij zijn op zoek naar een ambitieuze, zelfsturende Front-end Expert die ons (internationale) team komt versterken. Onze huidige software development afdeling bestaat uit 7 developers en designers. Wij zijn een écht softwarehuis, dus ervaring in software development is wel echt een must. Er wordt tegelijkertijd aan meerdere projecten gewerkt, voor mooie toonaangevende klanten. Je hebt dus regelmatig te maken met deadlines en opleveringen. Een deel van onze omgeving is in Angular.JS. Dit deel wordt langzamerhand omgebouwd naar de nieuwste versie van Angular. Jouw werkzaamheden zullen bestaan uit: Het aansturen en begeleiden van jouw collega’s Het implementeren van visuele elementen

Bekijk vacature »

BizTalk/ Azure Developer

Dit ga je doen •Understanding the scope of required functionality, translate them within context of way of working of the team into developed solutions, whilst safeguarding documentation; •Planning based on assigned sprint tasks; •Acting as an expert in estimation techniques and planning; •Understanding your role in the agile process and act in this way; •Facilitating internal communication and effective collaboration; •Working closely with scrum master to handle backlogs and new requests; •Providing information to the third parties about activities and needs for compliance. Hier ga je werken Our client is a leading organization focusing on animal nutrition, offering solutions that

Bekijk vacature »

(Junior) PHP Ontwikkelaar bij een retail bedrijf i

Bedrijfsomschrijving Ben jij een ervaren PHP ontwikkelaar met een passie voor retail en ICT? Wil jij werken in een team dat zich bezighoudt met het ontwikkelen van uitdagende applicaties voor een groot retailbedrijf in Delft? Dan zijn zij op zoek naar jou! Functieomschrijving Als PHP Ontwikkelaar werk je in een team aan de ontwikkeling van applicaties die door de gehele organisatie worden gebruikt. Je bent verantwoordelijk voor het ontwikkelen, testen en implementeren van deze applicaties. Je werkt hierbij nauw samen met andere ontwikkelaars, projectmanagers en stakeholders binnen de organisatie. Je taken bestaan onder andere uit: Ontwikkelen van nieuwe functionaliteiten en

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc 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

Bekijk vacature »

Java Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

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 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 »

Front-End Developer

As a Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a Front-End Developer at Coolblue? As a 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 these within the team. You also take pride in your work and welcome any feedback. Would you like to become a Front-End Developer at Coolblue? Read below if the job suits you. You

Bekijk vacature »

React developer Inhouse cloudplatform

Functie De functie: Als front-end developer kom je te werken naast 2 andere front-end/React developers, waaronder één senior. Een hele mooie kans dus om in korte tijd veel nieuwe kennis en ervaring op te doen. Ze hebben momenteel veel werk hierin en daarom willen ze het team graag uitbreiden. Het is van belang dat je, zeker gezien het vele thuiswerken, in ieder geval al een aantal projecten hebt gedaan in React. Taken waar je aan kunt denken zijn het ontwikkelen van client-applicaties o.b.v. HTML5, React en andere open standaarden. Ook ben je nauw betrokken bij het implementeren van designs o.b.v.

Bekijk vacature »

Front-end developer (Medior/Senior)

Functie Het front-end team bestaat momenteel uit 4 collega’s en is hard aan het groeien! Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren. Je werkt in het front-end team samen met de back-end teams en product owners om te zorgen dat de applicaties een fijne gebruikerservaring opleveren. Jouw expertise zorgt ervoor dat de juiste keuzes gemaakt worden qua techniek en ontwerp, van back-end tot aan gebruiker. In samenspraak met je team bepalen jullie de beste keuze voor techniek. Ook is er altijd ruimte om nieuwe technieken te ontdekken. Eisen • Je hebt gedegen

Bekijk vacature »

Front-end Developer

Gezellige team, passie en een groene toekomst! Lees hier de vacature van Front-end Developer bij All in Power! All in power heeft zich tot doel gesteld écht bij te dragen aan de energietransitie. Dit doen wij door de markt voor energie volledig op zijn kop te zetten. Producenten van schone (wind- of zonne-)energie verkopen via ons platform hun energie rechtstreeks aan gebruikers. Of dit nu huishoudens, bedrijven of bijvoorbeeld laadpalen zijn ons platform maakt het uitwisselen van energie mogelijk. Zo maken we de business case van onze klanten veel sterker en loont het om (meer) te investeren in vergroening voor

Bekijk vacature »

.Net Front-end Ontwikkelaar

Wij zoeken een .Net Front-end Ontwikkelaar! Omschrijving Kun jij snel schakelen en ben je stressbestendig? Dan zoeken wij jou! Als .Net Front-end Ontwikkelaar help je mee aan de webapplicatie die over de hele wereld door allerlei bedrijven wordt gebruikt. Je werkt daarnaast mee aan nieuwe en verbeterde functionaliteiten en helpt met het oplossen van bugs. Over de opdrachtgever Je komt te werken in een ambitieus team dat zich blijft ontwikkelen. Dit is alle informatie die we nu kunnen delen over de werkplek. Als jij de .Net Front-end Ontwikkelaar bent voor deze job, vertellen we je snel nóg meer. Eisen Heb

Bekijk vacature »
Donald Boers

Donald Boers

11/12/2015 09:05:30
Quote Anchor link
Op een website voor scooter onderdelen heb ik op de update pagina voor een onderdeel 5 chekboxen staan met modellen waar dit onderdeel voor geschikt is (komt uit tafel modellen):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php foreach ( $selected_modellen as $model ): ?>
<input name="model_id[]" type="checkbox" value="<?php echo $model['model_id']; ?>">         
<?php endforeach; ?>

Bij het invoeren van de diversen onderdelen heb ik de modellen waarop een onderdeel past, ook gebruikmakend van checkboxen, ingevoerd in een many-to-many tafel (onderdeel_modellen):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
foreach ($model_id as $model)
{
    $this->onderdelen->onderdeel_modellen_toevoegen($onderdeel_id, $model);
}

Deze gegevens haal ik vervolgens ten behoeve van de update pagina uit de database:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
public function get_onderdeel_modellen($onderdeel_id)
{
    $sql = "SELECT *
              FROM onderdeel_modellen
             WHERE onderdeel_id = ?";

    $stmt = $this->pdo->prepare($sql);
    $stmt->execute(array($onderdeel_id));
        
    return $stmt->fetchAll();
}

Waar ik nu mee worstel is hoe ik het juiste aantal checkboxen in de bovenstaande loop gechecked krig op basis van de bovenstaande query. Ik heb een aantal dingen geprobeerd zoals:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<input name="model_id[]" type="checkbox" value="<?php echo $model['model_id']; ?>" <?php if ($onderdeel_modellen['model_id'] == $model['model_id']) ?> checked <?php endif; ?>>

Maar ik krijg het niet werkend
Gewijzigd op 11/12/2015 09:07:52 door Donald Boers
 
PHP hulp

PHP hulp

04/05/2024 04:57:01
 
Jan de Laet

Jan de Laet

11/12/2015 09:36:06
Quote Anchor link
Je value is nu $model['model_id'], zou dat niet de 'id' van tabel onderdeel_modellen moeten zijn?
 
Donald Boers

Donald Boers

11/12/2015 10:19:28
Quote Anchor link
Jan de Laet op 11/12/2015 09:36:06:
Je value is nu $model['model_id'], zou dat niet de 'id' van tabel onderdeel_modellen moeten zijn?

Nee alleen de model_id's die in onderdeel_modellen staan en bij het betreffende product horen dienen gecheked te zijn.
Dit is de data in de tafel modellen die ik gebruik voor het genereren van de model checkboxen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
INSERT INTO `modellen` (`model_id`, `model`) VALUES
(1, 'A35'),
(2, 'Flexer'),
(3, 'PackR'),
(4, 'Revival'),
(5, 'Standaard'),
(6, 'Youngster');

en dit is een voorbeeld van data in tafel onderdeel_modellen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
INSERT INTO `onderdeel_modellen` (`id`, `onderdeel_id` `model_id`) VALUES
(7, 1, 213),
(8, 2, 213),
(9, 3, 213);

dus bij product 213 dienen alleen de eerste drie van de totaal zes checkboxen gechecked te zijn.

Maakt dit het wat duidelijker

Toevoeging op 11/12/2015 11:45:07:

Ik heb het geprobeerd met een ingesloten foreach loop:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php foreach ($modellen as $model): ?> // foreach loop voor het genereren van de checkboxen
    <?php
        $checked
= array();
        foreach ($selected_modellen as $selected):
            $checked[] = $selected['model_id'];?>
                    
    <?php endforeach; ?>
    <input name="model_id[]" type="checkbox" value="<?php echo $model['model_id']; ?>" <?php if ($checked == $model['model_id']): ?>checked<?php endif; ?>>
<?php endforeach; ?>

Maar helaas zonder resultaat. Wat zie ik over het hoofd?
Gewijzigd op 11/12/2015 10:24:09 door Donald Boers
 
Max Vaessen

Max Vaessen

11/12/2015 12:57:34
Quote Anchor link
Hi Ronald,

Zou je voor mij eens een opzet van de arrays '$modellen' en '$selected_modellen' kunnen laten zien?
Dan kan ik er even naar kijken.

PS: conventie tip: in het scriptje waar je de input genereert met daarbij of deze selected is of niet, gebruik je veel < ?php. Persoonlijk zou ik alles in 1 < ?php zetten en de input dus printen / echo'en. Dit is on-the-long-run een stuk efficienter omdat de PHP parser niet voor elke regel moet kijken of hij PHP of HTML voorgeschoteld krijgt en opnieuw moet parsen.

Max
Gewijzigd op 11/12/2015 12:59:14 door Max Vaessen
 
Donald Boers

Donald Boers

11/12/2015 13:27:05
Quote Anchor link
Hi Max. Hartelijk dank voor je reactie en tips

//Model modellen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
SELECT model_id
     , model
  FROM modellen


//Model onderdeel_modellen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
SELECT model_id
  FROM onderdeel_modellen
 WHERE onderdeel_id = ?


In de Controller

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$onderdeel_id      = filter_input(INPUT_POST, 'onderdeel_id', FILTER_SANITIZE_NUMBER_INT);
$selected_modellen = $this->artikelen->get_selected_modellen($onderdeel_id);
$modellen          = $this->artikelen->get_modellen_dropdown();


Waarbij $selected_modellen en $modellen uiteraard naar de view gaan. Is dit voldoende info?
Gewijzigd op 11/12/2015 13:29:48 door Donald Boers
 
Jan de Laet

Jan de Laet

11/12/2015 13:41:33
Quote Anchor link
In je reactie van 10:19 lijken mij in de onderdeel_modellen de velden onderdeel_id en model_id omgewisseld.
Bij 213 is onderdeel en 1 is model_id
Gewijzigd op 11/12/2015 13:41:48 door Jan de Laet
 
Max Vaessen

Max Vaessen

11/12/2015 13:42:24
Quote Anchor link
Hoi Donald,

Zou je voor mij eens een print_r(); willen doen van de arrays die je in je controller hebt staan? Dan kan ik de situatie iets gemakkelijker nabootsen, dan op wat uitleg afgaan (foutgevoelig, ook van mijn kant) :)
 
Donald Boers

Donald Boers

11/12/2015 14:39:30
Quote Anchor link
Max Vaessen op 11/12/2015 13:42:24:
Hoi Donald,

Zou je voor mij eens een print_r(); willen doen van de arrays die je in je controller hebt staan? Dan kan ik de situatie iets gemakkelijker nabootsen, dan op wat uitleg afgaan (foutgevoelig, ook van mijn kant) :)

Hoi Max. Ik ben er uit. In de Controller heb ik met de resultaten van de selected_modellen een nieuwe array samengesteld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$id = array();
foreach ($selected_modellen as $selected)
{
    $id[] =  $selected['model_id'];    
}


en vervolgens de $id array naar de view gestuurd inplaats van $selected_modellen en dan in de view:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php foreach ($modellen as $model): ?>              
    <input name="model_id[]" type="checkbox" value="<?php echo $model['model_id']; ?>" <?php if (in_array($model['model_id'], $id)): ?>checked<?php endif; ?>><?php echo $model['model']; ?>
<?php endforeach; ?>


Hartelijk dank voor je tijd en input. Heeft me reuze geholpen
Gewijzigd op 11/12/2015 14:40:40 door Donald Boers
 
Max Vaessen

Max Vaessen

11/12/2015 14:47:24
Quote Anchor link
Hoi Donald,

Zo veel had ik nog niet gedaan :), maar fijn dat je geholpen bent!

Succes!
Gewijzigd op 11/12/2015 14:47:39 door Max Vaessen
 



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.