• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

1x stemmen per ip adres.

  • P493
  • 2 april 2014 om 01:20
  • P493
    Beginner
    Berichten
    7
    • 2 april 2014 om 01:20
    • #1

    Goede avond iedereen.

    Ik ben bezig met een stem systeem, dit houd in dat je op een vind ik leuk of vind ik niet leuk kan klikken, en vervolgens naar de volgende vraag gaat.
    Nu wil ik het zo hebben dat je maar 1x kan stemmen per vraag, maar ik kom hier niet uit.

    Ik heb al wat gegoogled en kwam uit op $_SERVER['REMOTE_ADDR'].
    Zou iemand mij een handje op weg kunnen helpen hiermee?
    De poll werkt met een database.

    Mvg, Wouter.

  • Guest, wil je besparen op je domeinnamen? (ad)
  • A.Bijlsma
    Web Developer
    Ontvangen Reacties
    3
    Berichten
    1.795
    • 2 april 2014 om 01:39
    • #2

    Fa je via text bestand werken?
    OF
    Ga je via database werken? Gebruik je dan MySQL, MySQLi of PDO?

    Heb je al iets?

    Met vriendelijke groet,

    A.Bijlsma
    Venimo

  • P493
    Beginner
    Berichten
    7
    • 2 april 2014 om 01:47
    • #3

    Ik wil het gaan gebruiken via mysql.
    Ik heb al wel iets, ik heb het nu zo gemaakt, dat als je stemt het ipadress in de database gezet word, alleen nu het volgende:

    ~ Hoe controleer ik of iemand van het desbetreffende ipadres al gestemd heeft?
    ~ Hoe zet ik meerdere ipadressen in 1 kolom?

  • A.Bijlsma
    Web Developer
    Ontvangen Reacties
    3
    Berichten
    1.795
    • 2 april 2014 om 01:59
    • #4

    Laat je huidige code eens zien?

    Met vriendelijke groet,

    A.Bijlsma
    Venimo

  • P493
    Beginner
    Berichten
    7
    • 2 april 2014 om 02:00
    • #5
    Code
    $ip = $_SERVER["REMOTE_ADDR"];
    $sql= ("UPDATE stem SET ip= '$ip' WHERE vid= $id");

    Dit is het enigste wat ik nu heb.

  • A.Bijlsma
    Web Developer
    Ontvangen Reacties
    3
    Berichten
    1.795
    • 2 april 2014 om 02:27
    • #6

    Kun je beter een aparte tabel er voor gaan aanmaken.

    Tabel aanmaken
    Maak bijvoorbeeld een tabel met de naam 'gestemd'.
    Met 2 kolommen 'ip' en 'antwoord'.

    Stem toevoegen

    Code
    mysql_query("INSERT INTO gestemd (ip, antwoord) VALUES ($_SERVER["REMOTE_ADDR"], $antwoord)");

    Kijken of IP gestemd heeft

    Code
    $getip = mysql_query("SELECT ip FROM gestemd WHERE ip = " . $_SERVER["REMOTE_ADDR"]);
    
    
    if(mysql_num_rows($getip) == 1){
    //Je hebt al gestemd
    } else{
    //Je kunt stemmen
    }


    Ik raad je wel aan om over te stappen naar MySQLi aangezien MySQL vroeg of laat volledig deprecated gaat worden.

    Met vriendelijke groet,

    A.Bijlsma
    Venimo

  • hicham
    Student
    Berichten
    136
    • 2 april 2014 om 02:29
    • #7
    PHP
    <?php
    //-- Stem cmsje
    
    
    //-- Include 
    include "database.php"; 
    
    
    //-- Var
    $ip = $_SERVER["REMOTE_ADDR"];
    
    
    //-- Sql
    $data 	= 	mysql_query("select `id`,`vraag`,`keuze`,`keuze2`,`antwoord`,`antwoord2` from `vragen`");
    $selc 	= 	mysql_query("select `id`,`vraag`,`keuze`,`keuze2`,`antwoord`,`antwoord2` from `vragen` where `id`='".$_GET['p']."'");
    $check  = 	mysql_query("select `id`,`ip` from `vragen_check` where `id`='".$_GET['p']."' && `ip`='".$ip."'");
    
    
    //-- Geen vraag id, dus alle vragen
    if(!isset($_GET['p'])) {
    
    
    	while($db = mysql_fetch_assoc($data)) {
    		
    		echo	
    		'<table width="100%" cellspacing="2" cellpadding="2">
    			<tr>
    				<td>Vraag </b>'.$db['vraag'].'</b></td>
    			</tr>
    		</table>';
    		
    	}
    	
    }
    
    
    //-- Vraag id ophalen db
    if(isset($_GET['p'])) {
    
    
    	// Ip en antwoord komen al in database voor
    	if(mysql_num_ros($check) > 0) {
    		echo 'Al gestemd';
    	} // Vraag kiezen
    	 else {
    		echo 'Form action etc hier';
    	}
    	
    }
    ?>
    Toon Meer

    Snel een code geschreven, zoiets kan je maken. Weet niet of hij foutloos is. Dit is enkel een voorbeeld

    Code
    Streetgun.net -> Terug aan de top!
  • casb
    Beginner
    Berichten
    3
    • 2 april 2014 om 13:41
    • #8

    Er zijn veel handige database classes te vinden op internet. Door zo'n class te gebruiken maak je het jezelf weer een stuk makkelijker.
    Bijvoorbeeld: https://github.com/indieteq/PHP-MySQL-PDO-Database-Class

    Vervolgens kan je door middel van de bekende $_SERVER["REMOTE_ADDR"] het IP adres van de gebruiker opvragen.
    Als je deze in een database zet, in combinatie met de huidige stap/vraag, gaat het denk ik helemaal lukken ;)


    Klein voorbeeld:

    => Check eerst of het huidige IP adres al een row heeft in jou table.
    Zoniet: aanmaken!

    PHP
    $db = new Db();
    $ip = $_SERVER["REMOTE_ADDR"];
    $check = $db->single("SELECT ip FROM ips WHERE ip = :ip",array("ip",$ip));
    if ($check === false) {
      $insert   =  $db->query("INSERT INTO ips(ip,vraag) VALUES(:ip,:vraag)", array("ip"=>$ip,"vraag"=>0));
    }

    En na elke vraag:

    PHP
    $update   =  $db->query("UPDATE ips SET vraag=vraag+1 WHERE ip = :ip", array("ip"=>$ip));

    Of vraag op bij welke vraag de gebruiker is:

    PHP
    $vraag = ($check !== false ? $check->vraag : 0);

    Senior Web Developer
    Bootstrap, jQuery, HTML5, CSS3, RESTfull API's, SQL server, Windows Azure, .NET & PHP OOP expert

  • AarClay
    Intermediate
    Ontvangen Reacties
    34
    Berichten
    423
    • 4 april 2014 om 01:12
    • #9

    Nog even een tip. Vergeet niet dat er meerdere mensen op een IP zitten, die je buitensluit om te stemmen.

    Je zou ervoor kunnen zorgen dat het IP maar voor een half uur geblokkeerd wordt voor het stemmen op de poll. Verder plaats je ook een cookie waarin duidelijk is of er gestemd is.

    Misbruik is altijd mogelijk, maar dit is al een flinke drempel die misbruik minder nuttiger maakt, omdat het tijdrovender is. Vooral als je de tijd van een halfuur voor jezelf houdt. ;)

    SQL
    DELETE ip_voted WHERE pollID = 42 AND dateVoted + INTERVAL 30 MINUTES < NOW()
  • A.Bijlsma
    Web Developer
    Ontvangen Reacties
    3
    Berichten
    1.795
    • 4 april 2014 om 01:45
    • #10

    Wat AarClay zegt is inderdaad een interessante optie wat je kan gaan toepassen.

    Met vriendelijke groet,

    A.Bijlsma
    Venimo

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 1 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design