• Inloggen
  • Registreer
  • Zoeken
Dit topic
  • Overal
  • Dit topic
  • Dit forum
  • Artikelen
  • Pagina's
  • Forum
  • Downloads
  • Meer opties

ICTscripters

Dé plek voor IT

Dé plek voor IT

Aanmelden

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  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
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  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
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  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
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • [Beta] Ottomaan: gratis browserspel met een echte, levende stad. Feedback gezocht!

    frio 27 oktober 2026 om 12:22
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Jeroen.G 26 oktober 2026 om 10:33
  • Maffia Hotel: een browsergame waarin je van lobbygast naar spil van het hotel groeit

    eeyk 22 oktober 2026 om 18:43
  • Crime Club volledig herschreven vanaf nul

    frio 19 oktober 2026 om 23:57
  • Malavita (nieuwe maffia game, van 0)

    jos 19 oktober 2026 om 23:18
  • Herkent deze Notion-structuurscan echte problemen?

    Jeroen.G 19 oktober 2026 om 15:09
  • 🚀 WE ZOEKEN TESTERS! 🚀

    Servertjee 3 oktober 2026 om 10:56
  • Luchtvaartsoftware: Hoe technologie de moderne luchtvaart verandert

    saggy2829 30 september 2026 om 19:31

Marktplaats

  • [Aanbod] Stadskaart voor je browsergame: van menu naar klikbare stad, vanaf €200

    frio 29 oktober 2026 om 18:17
  • [Verkoop] G4G (Gangsters 4 Gangsters): volledige broncode, nieuw gebouwd in PHP 8.3 | € 30 per domein

    frio 27 oktober 2026 om 18:54
  • [TE KOOP] Malavita.be [Maffiaspel, gebaseerd op omicidio.nl, unieke code]

    Dpm_x 26 oktober 2026 om 00:22

Beveiligen

  • Dpm_x
  • 26 maart 2011 om 13:53
  • Online
    Dpm_x
    Gevorderd
    Berichten
    361
    • 26 maart 2011 om 13:53
    • #1

    Tegen wat moet ik mijn site allemaal beveiligen? En hoe moet ik dit doen?

  • Gast, wil je besparen op je domeinnamen? (ad)
  • L.Groot
    Elite members
    Berichten
    4.888
    • 26 maart 2011 om 13:55
    • #2

    Vooral op XSS en SQL injections.
    Beveiligen met: [func]strip_tags[/func], [func]mysql_real_escape_string[/func], [func]htmlspecialchars[/func] of [func]htmlentities[/func].

    Neem aan dat het met deze PHP pagina's duidelijk is.

  • Online
    Dpm_x
    Gevorderd
    Berichten
    361
    • 26 maart 2011 om 14:14
    • #3

    Hoe kan je een $_GET het best beveiligen? via mysql_real_escape_string?

  • Jackie
    Hardstyle
    Berichten
    224
    • 26 maart 2011 om 14:51
    • #4
    PHP
    if(!ctype_digit($_GET['iets']))
    {
        echo 'Het is niet numeriek';
    }
    else
    {
        echo 'Het is wel numeriek';
    }

    Zoiets?

    Bezig met een zelf gemaakte source, geschreven vanaf 0 natuurlijk!

  • L.Groot
    Elite members
    Berichten
    4.888
    • 26 maart 2011 om 15:02
    • #5

    Met [func]strip_tags[/func] en [func]mysql_real_escape_string[/func].

    [func]htmlspecialchars[/func] en [func]htmlentities[/func] gebruik je als je bijvoorbeeld een textveld heb om bijvoorbeeld nieuws te posten. Dan typt iemand bijvoorbeeld een é en die word dan niet vervangen (dan zie je zo'n vaag tekentje). Die é word dan automatisch in een é vervangen waardoor het goed word weergegeven.

    Als je dan bijvoorbeeld nieuws wil bewerken moet je uiteraard niet die [func]htmlspecialchars[/func] en [func]htmlentities[/func] toepassen omdat je dan in een textveld ook al é krijgt te zien. Daarom moet je [func]htmlspecialchars[/func] en [func]htmlentities[/func] alleen gebruiken bij een output.
    In de MySQL database zet je dus gewoon de é en niet de é.

    Hieronder vind je een compeet nieuws systeem.
    Dit mag je gratis van me hebben.
    Maak in je database aan:

    PHP
    CREATE TABLE IF NOT EXISTS `nieuws` (
      `id` int(100) NOT NULL default '0',
      `titel` varchar(100) NOT NULL,
      `omschrijving` text NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

    En de hele PHP pagina, opslaan als nieuws.php:

    PHP
    <?php
    echo '<h1>Nieuws</h1><br />';
    if($_GET['a'] == "nieuw"){
    	// Nieuws plaatsen
    	if(isset($_POST['submit'])){
    		// Formulier is gepost
    		$titel = strip_tags(mysql_real_escape_string($_POST['titel']));
    		$omschrijving = strip_tags(mysql_real_escape_string($_POST['titel']);
    		if(strlen($titel) >= 3 && strlen($titel)) <= 100){ // Controleer of de titel groter dan 2 is en kleiner dan 100 tekens
    			if(strlen($omschrijving) >= 5 && strlen($omschrijving) <= 1250){ // Controleer of de omschrijving groter dan 2 tekens en kleiner dan 1251 tekens is
    			mysql_query("INSERT INTO nieuws (titel, omschrijving) VALUES('".$titel."', '".$omschrijving."')");
    			echo '<span style="color: green;"><b>Nieuws is met succes geplaatst</b>.</span><br />
    				  <a href="nieuws.php?a=nieuw">Keer terug</a> naar de nieuws overzicht pagina';
    			} else{
    			echo '<span style="color: red;"><b>De omschrijving is kleiner dan 5 of groter dan 1250 tekens</b>.</span><br />
    				  <a href="nieuws.php?a=nieuw">Keer terug</a> naar de nieuws toevoeg pagina';			
    			}
    		} else{
    			echo '<span style="color: red;"><b>De titel is kleiner dan 3 of groter dan 100 tekens</b>.</span><br />
    				  <a href="nieuws.php?a=nieuw">Keer terug</a> naar de nieuws toevoeg pagina';
    		}
    	} else{
    		echo '
    		<h2>Nieuws toevoegen</h2>
    		<form method="post" action="">
    			<b>Titel:</b><br />
    			<input type="text" name="titel" size="40" maxlength="100" /><br />
    			<b>Omschrijving:</b><br />
    			<textarea name="omschrijving" cols="15" rows="8" maxlength="1250"></textarea><br />
    			<br />
    			<input type="submit" name="submit" value="Maak nieuws aan" />
    		</form>
    		';
    	}
    } else if($_GET['a'] == "edit"){
    	// Nieuws wijzigen
    	if(is_numeric($_GET['id'])){ // Controleer of id een nummer is
    		$res = mysql_query("SELECT id, titel, omschrijving FROM nieuws WHERE id=".$_GET['id']."");
    		if(mysql_num_rows($res) > 0){ // Controleer of nieuws bestaat
    			if(isset($_POST['submit'])){
    				// Formulier is gepost
    				$titel = strip_tags(mysql_real_escape_string($_POST['titel']));
    				$omschrijving = strip_tags(mysql_real_escape_string($_POST['titel']);
    				if(strlen($titel) >= 3 && strlen($titel)) <= 100){ // Controleer of de titel groter dan 2 is en kleiner dan 100 tekens
    					if(strlen($omschrijving) >= 5 && strlen($omschrijving) <= 1250){ // Controleer of de omschrijving groter dan 2 tekens en kleiner dan 1251 tekens is
    					mysql_query("UPDATE nieuws SET titel='".$titel."', omschrijving='".$omschrijving."' WHERE id=".$sel['id']."");
    					echo '<span style="color: green;"><b>Nieuws is met succes bewerkt</b>.</span><br />
    						  <a href="nieuws.php?a=nieuw">Keer terug</a> naar de nieuws overzicht pagina';
    					} else{
    					echo '<span style="color: red;"><b>De omschrijving is kleiner dan 5 of groter dan 1250 tekens</b>.</span><br />
    						  <a href="nieuws.php?a=nieuw&id='.$sel['id'].'">Keer terug</a> naar de nieuws bewerk pagina';			
    					}
    				} else{
    					echo '<span style="color: red;"><b>De titel is kleiner dan 3 of groter dan 100 tekens</b>.</span><br />
    						  <a href="nieuws.php?a=nieuw&id='.$sel['id'].'">Keer terug</a> naar de nieuws bewerk pagina';
    				}
    			} else{
    				echo '
    				<h2>Nieuws bewerken</h2>
    				<form method="post" action="">
    					<b>Titel:</b><br />
    					<input type="text" name="titel" size="40" maxlength="100" value="'.$sel['titel'].'" /><br />
    					<b>Omschrijving:</b><br />
    					<textarea name="omschrijving" cols="15" rows="8" maxlength="1250">'.$sel['omschrijving'].'</textarea><br />
    					<br />
    					<input type="submit" name="submit" value="Bewerk nieuws" />
    				</form>
    				';
    			}
    		} else{
    			echo '<span style="color: red;"><b>Dit nieuws bestaat niet (meer)</b>.</span><br />
    				  <a href="nieuws.php?a=edit">Keer terug</a> naar de nieuws bewerk pagina';		
    		}
    	} else{
    		// Kies nieuws om te bewerken
    		$res = mysql_query("SELECT id, titel FROM nieuws ORDER BY id DESC LIMIT 2");
    		while($sel = mysql_fetch_array($res)){
    			// Zet speciale karakters en enters om naar HTML valid tekens
    			echo '<a href="nieuws.php?a=edit&id='.$sel['id'].'"><b>Bewerk</b> "'.htmlspecialchars($sel['titel']).'"</a><br />';
    		}		
    	}
    } else{
    	// Nieuws laten zien
    	$res = mysql_query("SELECT titel, omschrijving FROM nieuws ORDER BY id DESC LIMIT 2");
    	while($sel = mysql_fetch_array($res)){
    		// Zet speciale karakters en enters om naar HTML valid tekens
    		echo '<h2>'.htmlspecialchars($sel['titel']).'</h2>';
    		echo htmlspecialchars(nl2br($sel['omschrijving']));
    		echo '<br />';
    	}
    }
    ?>
    Meer tonen
  • Online
    Dpm_x
    Gevorderd
    Berichten
    361
    • 26 maart 2011 om 15:23
    • #6

    Bedankt ;)
    en ik ben van plan alles zelf te maken dus niet nodig , maar toch bedankt :)

  • L.Groot
    Elite members
    Berichten
    4.888
    • 26 maart 2011 om 15:27
    • #7

    Je kan het iig gebruiken als handleiding en/of documentatie ;).
    Dit systeempje is optimaal beveiligd ;).

  • Online
    Dpm_x
    Gevorderd
    Berichten
    361
    • 26 maart 2011 om 15:34
    • #8

    idd als handleiding is het wel handig aangezien ik toch redelijk veel moet opzoeken terwijl ik bezig ben :D

    Nieuwe reactie samengevoegd met originele reactie op 26.03.11 17:32:10:
    heeft iemand een tutorial voor dit? :
    ik wil dat er maximaal 20 leden op 1 pagina staan , vanaf dan moet er een nieuwe pagina aangemaakt worden

  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 27 maart 2011 om 00:50
    • #9

    Tada
    http://www.sitemasters.be/tutorials/1/1/…in_PHP_en_MySQL

  • YinYangYo
    WG2
    Berichten
    55
    • 27 maart 2011 om 10:58
    • #10

    Beveilig tegen bots, greasemonkey.

  • Jackie
    Hardstyle
    Berichten
    224
    • 27 maart 2011 om 13:33
    • #11

    L.Groot

    Als je htmlspecialchars hebt gebruikt om iets in de database te zetten.

    Staat het al als html tekens in de database.

    En waarom zou je dan htmlspecialchars weer gebruiken tijdens het uitspugen van de gegevens uit de database?

    Of zie ik het verkeerd?

    Bezig met een zelf gemaakte source, geschreven vanaf 0 natuurlijk!

  • L.Groot
    Elite members
    Berichten
    4.888
    • 27 maart 2011 om 22:12
    • #12

    Oja, snelheidsfoutje :)
    Pas ik morgen wel even aan.

Registratie

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

Nu registreren Aanmelden

ICT Nieuws

  • PHP waarschuwt voor twee ernstige bugs die makkelijk uit te buiten lijken

    Aaron 22 oktober 2026 om 22:19

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. Privacyverklaring
  10. Contact
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design