stempagina aanpassen

Overzicht

Sponsored by: Vacatures door Monsterboard

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een gewaardeerde werkgever in regio Oosterhout zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! 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 houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je brengt de aanpassingssuggesties van klanten in kaart, om

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 »

Front-end developer gezocht

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

(Lead) PHP Software Developer

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een PHP software developer met een aantal jaar werkervaring. Je krijgt een plek in een klein team met 2 andere software developers. Wil jij graag werken met de nieuwste technieken bij een bedrijf waar jij de lead gaat nemen in de verder ontwikkeling en modernisering van een eigen software pakket? Dan ben je hier aan het juiste adres! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "in-house" ontwikkelde multimedia platform. Je neemt de lead in

Bekijk vacature »

Oracle Apex Developer

Dit ga je doen Jouw taken bestaan uit: Het bouwen maatwerk Oracle applicaties voor Europese business units; Het implementeren van de nieuwste technieken om te blijven innoveren; Actief meedenken en aandragen van verbetervoorstellen. Hier ga je werken Deze organisatie in de regio Veenendaal is een van wereld grootste retailers met ruim 16.000 winkels in 27 markten en jaarlijks ruim 5,3 miljard klanten die winkelen bij een van hun welbekende retailmerken. Binnen de organisatie is er een IT Group actief die dient als IT Service Provider voor de hele organisatie en waar dagelijks IT'ers werken aan state-of-the-art IT oplossingen. Dit doen

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je hier

Bekijk vacature »

Software Ontwikkelaar PHP

Functie omschrijving Full Stack Software Ontwikkelaar gezocht! Voor een bedrijf in de regio van Ermelo zijn wij op zoek naar een Software Ontwikkelaar die gaat bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van SaaS applicatie van dit bedrijf. Hierbij ga jij voor- en samenwerken met de klanten van de organisatie, het is hierbij dus van groot belang dat je communicatief vaardig bent en dat je beschikt over beheersing van zowel de Nederlandse als Engelse taal. Bedrijfsprofiel Waar ga je werken? Altijd al in een echt familiebedrijf willen werken? Dan is dit je kans! Het bedrijf waar je komt te

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar ontbreekt er aan passie en motivatie niks. Jij bent communicatief sterk en pakt iedere uitdaging dan ook met beide handen aan. Op projectbasis ga jij met je team of met enkele andere ontwikkelaars intern aan de slag bij diverse partners. Op basis van het project ga jij aan de slag en zijn de werkzaamheden en technieken erg divers. Jouw werkgever stelt jouw ontwikkeling hierin voorop, zo krijg je een vast vertrouwenspersoon die één keer in de maand op locatie van jouw project zal kijken hoe het gaat en of er eventuele aandachtspunten zijn. Daarnaast krijg

Bekijk vacature »

Applicatieontwikkelaar Java EE

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving De afdeling IV –

Bekijk vacature »

3D BIM Add-on Developer

As a 3D BIM add- on developer at KUBUS, you will develop add-ons (called BCF- Managers) to the leading building information modeling (BIM) programs Revit, Navisworks, Archicad, AutoCAD and Tekla Structures. BCF Managers enable data transfer between BIM software and BIMcollab. You will work on both the front- and the back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual

Bekijk vacature »

Freelance Fullstack Java Developer

Functieomschrijving Voor een opdrachtgever in omgeving Rotterdam zijn wij op zoek naar ervaren Fullstack JAVA Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid hebben

Bekijk vacature »

Front-end Developer

Dit ga je doen Het onderhouden, ontwikkelen en testen van front-end software van diverse klant- en medewerkersapplicaties; Het ontwikkelen van maatwerk front-end oplossingen in Vue.js en participeren in een scrumteam; Mede-verantwoordelijk voor het begeleiden en coachen van drie junior front-end developers; Verantwoordelijk voor code-reviews en het opstellen van de juiste documentatie zoals userstories en API ontwerp; Participeren in diverse projecten t.b.v. optimalisatie van diverse applicaties; Het opzetten van API koppelingen met externe applicaties. Hier ga je werken Betreffende organisatie is gevestigd in de regio van Swifterbant en is al ruim 20 jaar lang bedreven in het ontwikkelen en aanbieden van

Bekijk vacature »

Sportieve Junior C#.NET developer gezocht!

Bedrijfsomschrijving Wil jij werken aan webapplicaties bij de marktleider binnen de branche? Voor een klant in de buurt van Oosterhout ben ik op zoek naar een Fullstack .NET developer. Dit bedrijf bestaat bijna 10 jaar en is inmiddels uitgegroeid tot marktleider in Nederland en heeft tevens kantoren in meerdere landen in Europa. Dit bedrijf bouwt webapplicaties waarbij internationaal enkele honderdduizenden deelnemers, soms tegelijk, een beroep doen op de realtime data uit deze applicaties. Dit brengt erg veel technische uitdaging met zich mee. Ze ontwikkelen nieuwe applicaties maar ook bestaande applicaties worden uitgebreid en verbeterd. Hier kan jij een onderdeel van

Bekijk vacature »

Pagina: « vorige 1 2 3 4 5 6 volgende »

- Ariën  -
Beheerder

- Ariën -

09/11/2018 18:21:19
Anchor link
Oude mysql_***() functies?
En één query die je uitvoert en de ander overschrijft? Je maakt nu twee opdrachten als string aan, en voert enkel de laatste uit.
Gewijzigd op 09/11/2018 18:22:48 door - Ariën -
 
PHP hulp

PHP hulp

08/11/2024 17:52:52
 
Hans Zijlstra

Hans Zijlstra

09/11/2018 18:38:04
Anchor link
Arien,

ik heb mijn query even greyed out en nu werkt het feilloos. de Last_login = now() werkt en wordt steeds geupdated.

ik heb gezocht en nu werkt het wel.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$query = " UPDATE ".$SETTINGS["USERS"]." SET last_login = NOW(), pogingen = pogingen+1 WHERE id=".$user['id'];


https://www.w3resource.com/mysql/update-table/update-table.php
Gewijzigd op 09/11/2018 18:38:25 door Hans Zijlstra
 
- Ariën  -
Beheerder

- Ariën -

09/11/2018 18:41:42
Anchor link
Ja, je kan het ook in een query combineren, zoal je nu doet. Veel makkelijker.

Eerst maakte je twee opdrachten aan waarvan je enkel de laatste uitvoerde.

Maar let erop dat mysql_*** functies verouderd zijn en niet meer in PHP 7 werken. Gebruik liever de mysqli-functies.
Gewijzigd op 09/11/2018 18:42:11 door - Ariën -
 
Hans Zijlstra

Hans Zijlstra

09/11/2018 18:46:31
Anchor link
aah dat was de fout, hij voert de laatste uit.

Ik heb hier veelvuldig gelezen dat msql verouderd is, maar de stempagina moet donderdag werken :-)

aangezien ik beginner ben moet het eerst maar even zo, de andere optie is mij ook nog te hoog gegrepen.

ik heb nu de inlog geregeld (zij het in msql en het kan zeker nog verbeterd worden qua beveiliging) en ga na inlog verwijzen naar stempagina waarbij ik ook een kolom en deze update van 0 naar 1 zodat de gebruiker maar een keer kan stemmen.
 
- Ariën  -
Beheerder

- Ariën -

09/11/2018 18:50:15
Anchor link
De overstap van mysql functies naar mysqli is niet heel groot.
 
Hans Zijlstra

Hans Zijlstra

12/11/2018 11:27:26
Anchor link
ik heb dankzij jullie hulp het aantal inlogpogingen in de msql tabel. Ook heb ik een pagina aangemaakt met twee kandidaten en een submit button.

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
  <?php
@session_start();

error_reporting(0);
include("config.php");


    ?>


    <html>
    <head>
      <title>MR stempagina</title>
    </head>
    <body>

      <?php echo $_SESSION['user_info']['name']  ?>, u kunt hier stemmen.
      <form action="stemmen.php" method="POST">
        <p>Welke ouder wilt u als vertegenwoordiger van de ouders van de HBK afdeling in de medezeggenschapsraad?</p>
        <input type="radio" name="kandidaat" value="piet"> piet<br>
        <input type="radio" name="kandidaat" value="hein"> hein<br>
        <p><input type="submit" name="stem" value="stem"></p>

     <?php
      if(isset($_POST['kandidaat'])){
        $kandidaat = $_POST['kandidaat'];
        header("Location: vote.php");
      }

      else{
        $kandidaat = NULL;
        echo "kies uw kandidaat";
      }

      ?>


          <?php
  $error
= '';
  if(isset($_POST['stem'])){
    $sql = "SELECT * FROM ".$SETTINGS["kandidaat"]."";
    $sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
    $kandidaat = mysql_fetch_assoc($sql_result);
    if(!empty($kandidaat)){
      $_SESSION['user_info'] = $user;
      $query = " UPDATE ".$SETTINGS["kandidaat"]." SET aantal = aantal+1 WHERE id=".$kandidaat['id'];
      //$query = " UPDATE ".$SETTINGS["USERS"]." SET pogingen = pogingen+1 WHERE id=".$user['id'];
      mysql_query ($query, $connection ) or die ('request "Could not execute SQL query" '.$query);
      
    }

    else{
      $error = 'u heeft niet gestemd';
    }
  }

 
?>


          </form>
    </body>
    </html>


als ik stem wordt het aantal van de eerste kandidaat in de tabel kandidaten geüpdatet ondanks dat er op de andere kandidaat is gestemd. Waar gaat dit fout?

is het mogelijk om twee een kolommen in twee tabellen te updaten zodra er is gestemd.

ik wil graag een stem bij de geselecteerde kandidaat en bij de user een 1 in het vakje gestemd. Dan wilde ik bij de stemknop de controle doen of bij die user een 1 staan en dan de melding geven dat hij heeft gestemd. Echter de user info wordt niet onthouden?

graag uw helpende hand.

Toevoeging op 12/11/2018 12:24:43:

hallo inmiddels heb ik de user info op de nieuwe pagina opgelost.
 
- Ariën  -
Beheerder

- Ariën -

12/11/2018 13:20:22
Anchor link
Ik weet niet of je zelf de server beheert waar je site op staat.
Maar zodra deze mogelijk door je webhosting-beheerder van PHP 7 wordt voorzien zal je script niet meer werken, omdat je oude mysql_xxx()-functies gebruikt. Ik raad aan om dit zo snel mogelijk aan te passen.

Verder hoort er na een location-header een exit(); te staan. Je script wil je dan natuurlijk ook graag laten stoppen.
Gewijzigd op 12/11/2018 14:21:10 door - Ariën -
 
Hans Zijlstra

Hans Zijlstra

12/11/2018 13:26:07
Anchor link
op dit moment werkt het nog. Ik ga het bijwerken nadat ik het werkend heb gekregen :-)

de exit(); heb ik toegevoegd. Dank daarvoor.
 
Ozzie PHP

Ozzie PHP

12/11/2018 13:38:42
Anchor link
- Ariën - op 12/11/2018 13:20:22:
...
Maar zodra deze mogelijk door je webhosting-beheerder van PHP 7 wordt voorzien zal je script niet meer werken, omdat je oude mysqli-functies mysql-functies gebruikt. Ik raad aan om dit zo snel mogelijk aan te passen.

...
 
Hans Zijlstra

Hans Zijlstra

12/11/2018 14:02:57
Anchor link
Thanks ozzie. Het was mij duidelijk hoor. Arien had het al eerder gezegd????
Nog een idee waarom het niet werkt?
 
- Ariën  -
Beheerder

- Ariën -

12/11/2018 14:23:00
Anchor link
Potjandorie, ik ben MySQLi zo gewend dat ik bijna geen mysql meer kan typen... :+)
Mijn excuses voor de verwarring, omdat mijn interne spellingscontrole onbedoeld ingreep ;-)

Wat gaat er nu eigenlijk precies nog fout? Je had al het een en ander opgelost, zag ik?
Gewijzigd op 12/11/2018 14:24:49 door - Ariën -
 
Hans Zijlstra

Hans Zijlstra

12/11/2018 14:56:07
Anchor link
ik heb een tweede tabel gemaakt met daarin de kandidaten en een kolom aantal. als je de kandidaat hebt gekozen en op stemt drukt wordt er steeds een getal bij het aantal van de 1e kandidaat opgeteld ook al stem je op de tweede kandidaat.

verder heb ik bij de users een kolom gestemd aangemaakt die van 0 naar 1 moet gaan zodra er op de stem knop wordt gedrukt. Hiermee kan ik dan ook controleren of de user al gestemd heeft
 
Thomas van den Heuvel

Thomas van den Heuvel

12/11/2018 15:43:16
Anchor link
Als dit een eenmalige stemming is dan zou ik gezien het voorgaande gaan voor een bestaand online pollsite waar mensen hun stem kunnen uitbrengen, naar alle waarschijnlijkheid zijn er genoeg gratis sites.

Als dit geen eenmalige stemming is dan zou ik het systeem zo opzetten dat je ook makkelijk meerdere stemmingen kunt houden.

Zoals eerder aangegeven is een loginsysteem overbodig. Je kunt mensen rechtstreeks toegang geven met een token wat eenmalig te gebruiken is. Dit is laagdrempeliger voor de eindgebruiker en minder complex voor de ontwikkelaar.

Het nadeel van systemen die door, excusez le mot, hobbyisten in elkaar worden gezet is dat deze mogelijk bepaalde nuances missen. Ik neem aan dat de correcte werking van zo'n stemsysteem buiten kijf moet staan, ik zou dan op zijn minst database-transacties verwachten als je een trits queries uitvoert, die garandeert dat een stemactie één ondeelbaar geheel vormt.

Enfin, dit is een herhaling van zetten.
 
Hans Zijlstra

Hans Zijlstra

12/11/2018 15:55:42
Anchor link
Thomas,

ik had al aangegeven dat jouw voorstel voor mij nog boven de pet ging. Verder heb ik nu meerdere gratis pollssites geprobeerd die niet voor deze stemming werken omdat mensen dan maar een keer kunnen stemmen waar beide ouders dit moeten kunnen. Bij mij eerste versie was dat ook al een issue en bij de gratis en betaalde onlines ook.

dat is de reden dat is voor een hele basic versie ga waar alle ouders random een username en pass krijgen waarmee ze in moeten loggen zodat de anonimiteit is gewaarborgd. De database bevat deze inlogs zodat anderen niet kunnen stemmen. vervolgens moeten ze stemmen. Ik kan aantal inlogs zien en als ze stemmen volgt er een 1 in de database zodat ze daarna niet meer kunnen stemmen (deze code moet ik nog voor elkaar krijgen.) verder krijgt de gekozen kandidaat ook een teller die oploopt. Ook dit werkt nog niet.

Dus ik begrijp jouw "herhaling van zetten" maar deze hobbyist denkt dat als dit werkbaar is het goed is voor het doel. (daarna php7 en beveiliging)

ik dank je evenwel voor jouw feedback maar ben benieuwd of je mij ook de juiste weg in kunt duwen om wat ik nu heb werkend te krijgen ;-)
 
Thomas van den Heuvel

Thomas van den Heuvel

13/11/2018 13:40:27
Anchor link
Ik denk dat je het jezelf nogal moeilijk maakt doordat je extra complexiteit toevoegt met een loginsysteem. Daarnaast is een pollsysteem gevoelig voor fraude als je geen gebruik maakt van database-transacties, en hiervoor heb je een relationele database nodig, en hiervoor dien je de tabellen aan te maken met de juiste database engine.

Laat ik wat codesnippets erbij pakken.

Allereerst dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
  <?php
@session_start();
?>

Op regel 1 ga je al de mist in door "output" te produceren - die twee spaties voor het <?php blok. Vervolgens onderdruk je op regel 2 eventuele foutmeldingen die bij het starten/voortzetten van een sessie ontstaan. Mogelijk hebben deze twee regels tot gevolg dat de sessie niet succesvol gestart is, dus eigenlijk begin je hier al op de verkeerde voet.

Dan op regel 37 en 42 voer je de volgende twee queries uit:
SELECT * FROM ".$SETTINGS["kandidaat"]
UPDATE ".$SETTINGS["kandidaat"]." SET aantal = aantal+1 WHERE id=".$kandidaat['id']

En dit illustreert het belang van database-transacties.
Op het moment van het opvragen van informatie uit de tabel $SETTINGS['kandidaat'] - ontbreekt hier trouwens niet een argument in de trant van WHERE id = <huidige gebruiker> ofzo? Ik neem aan dat die tabel meerdere records bevat? - op dat moment zouden eigenlijk de gegevens van die tabel vergrendeld moeten worden totdat de mutatie (de UPDATE) afgerond is. Want wat nu als ik dit drie keer snel achter elkaar, en parallel, aanroep? Dan is de volgorde worst case zoiets:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
SELECT * FROM <tabel>
SELECT * FROM <tabel>
SELECT * FROM <tabel>
UPDATE <tabel> SET ... WHERE id = <id>
UPDATE <tabel> SET ... WHERE id = <id>
UPDATE <tabel> SET ... WHERE id = <id>

En halverwege worden daar controles uitgevoerd of de UPDATE mag plaatsvinden, maar op dat moment was alle informatie al binnengehaald nog voordat een andere proces een UPDATE heeft uitgevoerd!
Eigenlijk zouden regel 2 en regel 3 moeten wachten totdat de UPDATE die in wezen geïnitieerd werd in regel 1 klaar is met zijn bijbehorende UPDATE op regel 4 waarna de controles van de tweede en derde SELECT waarschijnlijk falen omdat dan (na afronding van de eerste UPDATE) niet meer voldaan kan worden aan de controles voor de UPDATEs.

Je opzet is ook zodanig dat je niet na kunt gaan wie er dubbel stemt? En als dat hetgene is wat je hierboven hardnekkig probeert te tellen, ook dat is helemaal niet nodig met de juiste voorzieningen.

Een mechanisme die dit waarborgt zijn transacties.

Zoals ik het zie wordt dit pollsysteem in zijn simpelste vorm zoiets (tabeldefinitie):
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
28
poll_polls
----------
id
active
name
description


poll_options
------------
id
poll_id
description
order


poll_votes
----------
poll_id
poll_option_id


poll_participants
-----------------
id
email
token
voted


poll_polls - kapstoktabel voor stemrondes
id - een auto_increment id voor unieke identificatie van stemmen
active - geeft aan of de poll "aan" of "uit" staat
name - titel van de poll
description - omschrijving van de poll, hier zou je ook informatie in kunnen zetten als openings- en sluitingsdatum van de poll, waar je later bijvoorbeeld aparte kolommen voor kunt maken

poll_options - bevat de verschillende stemopties voor de polls
id - auto_increment id voor unieke identificatie van de stemoptie
poll_id - de poll waar deze optie bijhoort
description - omschrijving van de optie, bijvoorbeeld de naam van een verkiesbare kandidaat
order - kolom waarmee je de opties een alternatieve sorteervolgorde kunt geven

poll_votes - houdt de stemmen per poll(optie) bij
poll_id - de poll waarop gestemd wordt
poll_option_id - de poll optie waarop gestemd wordt
Aan deze tabel kun je nog veel meer informatie hangen, zoals de datum van stemming en wellicht ook een "witness", dus de persoon die stemde op deze optie; het is dan de verantwoordelijkheid van de beheerder van deze data om deze informatie te strippen op het moment dat deze hierover een rapportage uitbrengt

poll_participants - tabel die minimale informatie bevat van personen die zijn uitgenodigd voor deelname
id - auto_increment id
poll_id - poll waarop je mag stemmen
email - contact e-mail adres
token - activatiecode voor deelname aan stemming
voted - boolean die aangeeft of er gestemd is

Dit is een minimale opzet die alle informatie bevat die je initieel nodig hebt om een eenvoudig pollsysteem te bouwen. Je zult dan dus nog wel op een of andere manier activatiecodes moeten genereren en mailen naar een lijst van gebruikers, maar ook dat is redelijk eenvoudig te bouwen.

Het blijft echter wel zaak dat wat voor aanpak je ook kiest dat er haast een "zero margin for errors" is. Dit is immers een administratief systeem, en het is zaak dat je administratie te allen tijde klopt. Ik denk niet dat dat gaat lukken zonder een opzet met een relationele database of zonder gebruikmaking van eerdergenoemde transacties.
Gewijzigd op 14/11/2018 14:08:03 door Thomas van den Heuvel
 
Hans Zijlstra

Hans Zijlstra

13/11/2018 15:28:21
Anchor link
hoi thomas,

bedankt voor deze uitleg weer.

de inlogpagina werkt dus dat is niet het probleem.

vanuit deze pagina gaat de user naar de stempagina met session user.
deze bevat 2 radiobuttons en submit. hier moet er een gekozen worden. dat werkt ook.
na submit moet de $-POST kandidaat in de tabel kandidaten in de kolom aantal met een vermeerderd worden. de tabel bestaat uit

id
kandidaat
aantal

daarnaast moet er na submit door de bekende user het vakje gestemd in de tabel users
id
email
pass
name
lastlogin
pogingen
gestemd

de kolom gestemd van 0 naar 1
en bij de submit knop op de stempagina een check. indien gestemd op 1 echo u heeft al gestemd
 
Thomas van den Heuvel

Thomas van den Heuvel

13/11/2018 16:04:37
Anchor link
En waar loop je vast?
 
Hans Zijlstra

Hans Zijlstra

13/11/2018 16:24:06
Anchor link
na submit moet de $-POST kandidaat in de tabel kandidaten in de kolom aantal met een vermeerderd worden. op dit moment wordt alleen het nummer van kandidaat 1 vermeerderd met 1.

de user tabel gestemd wordt niet met 1 vermeerderd.
 
Thomas van den Heuvel

Thomas van den Heuvel

13/11/2018 16:56:05
Anchor link
Gebruik je in het stemformulier het id van de kandidaat? Dat lijkt mij het makkelijkste.

Dus zoiets:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
UPDATE kandidaten
SET aantal = aantal + 1
WHERE id = <id kandidaat uit formulier in $_POST>


En dan dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
UPDATE users
SET gestemd = 1
WHERE id = <id gebruiker uit $_SESSION>
 
Hans Zijlstra

Hans Zijlstra

13/11/2018 17:21:31
Anchor link
Thomas, dat is wel zoals het bij de aantal logins werkte.

Is jouw notatie ook zoals het zou moeten? WHERE id = <id gebruiker uit $_SESSION>

Toevoeging op 13/11/2018 17:38:35:

nu heb ik de code zo:
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
<?php
      if(isset($_POST['stem'])){
        $kandidaat = $_POST['kandidaat'];
        echo $_POST['kandidaat'];
        $query = " UPDATE ".$SETTINGS["kandidaat"]." SET aantal = aantal+1 WHERE id=".$_POST['id'];
        $query = " UPDATE ".$SETTINGS["USERS"]." SET gestemd = gestemd+1 WHERE id=".$_SESSION['id'];

        //header("Location: vote.php");
      }
      else{
        $kandidaat = NULL;
        echo "kies uw kandidaat";
      }

 ?>


zowel stem als aantal worden niet vermeerderd met 1
Gewijzigd op 13/11/2018 17:21:56 door Hans Zijlstra
 

Pagina: « vorige 1 2 3 4 5 6 volgende »

 

Dit topic is gesloten.



Overzicht

 
 

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.