• 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. Marktplaats
  4. (ver)Koop scripts

Forum

  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 30 december 2025 om 22:29
  • Developer Gezocht

    K.Rens 30 december 2025 om 12:32
  • Op zoek naar de legends

    Jeffrey.Hoekman 9 december 2025 om 09:41
  • [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
  • Partner Gezocht om meerdere NFT Collecties op Open Sea te Plaatsen

    NFT Art Designer 1 maart 2025 om 14:08

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

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

    Syntax 28 december 2025 om 21:20
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Registratie (form) [free]

  • Patrick
  • 14 mei 2009 om 22:07
  • Closed
  • Patrick
    Back in the game
    Ontvangen Reacties
    52
    Berichten
    1.417
    • 14 mei 2009 om 22:07
    • #1

    Ik ben bezig om classes te leren en daarmee heb ik een registratie script gemaakt misschien heeft er iemand nog nut van:

    index.php:

    PHP
    include "register.class.php";
    include "config.php";
    $class = new register();
    
    
    if (!isset($_POST['submit'])) {
    	$class->register_create_form();
    }
    	$class->register_check();
    }
    ?>
    Toon Meer

    register.class.php:

    PHP
    <?php
    error_reporting(E_ALL);
    class register 
    	{
    	
    	function register_check()
    		{
    			$name = "";
    			$password = "";
    			$pass_match = "";
    			$email = "";
    			
    			if ((isset($_POST['name'])) &&  (isset($_POST['password'])) && (isset($_POST['pass_match'])) && (isset($_POST['test']))) { 					
    				$name = safe_sql($_POST['name']);
    				$password = safe_sql($_POST['password']); 
    				$pass_match = safe_sql($_POST['pass_match']);
    				$email = safe_sql($_POST['test']);
    					
    				if ($password != $pass_match) {
    					$this->message("Passwords didnt match.");
    				}
    				else {
    					$query = mysql_query("SELECT username FROM users WHERE username='{$name}'") or die($this->message("sql error"));
    					$row = mysql_num_rows($query);
    		
    					if ($row > 0) { $this->message("Username already taken."); }
    					else {
    						$query = mysql_query("SELECT email FROM users WHERE email='{$email}'") or die($this->message("sql error"));
    						$row = mysql_num_rows($query);
    		
    						if ($row > 0) { $this->message("email adress already taken."); }
    						else {
    						$pass = md5($password);
    						$sql = "INSERT INTO users (user_id, username, password, email) VALUES (null, '{$name}', '{$pass}', '{$email}')";
    						mysql_query($sql) or die($this->message("sql error"));
    						$this->message("Registration succesfull.");
    						}
    					}
    				}
    			}
    			else {
    				$this->message("Not all fields were filled.");
    			}
    		}
    		function register_create_form ()
    			{
    			echo('
    			<form method="POST" action="'.$_SERVER['PHP_SELF'].'">
    			<p>Username: <input type="text" name="name" size="20"><br>
    			Password: <input type="text" name="password" size="20"><br>
    			Repeat password: <input type="text" name="pass_match" size="20"><br>
    			Email address: <input type="text" name="test" size="20"><br>
    			<input type="submit" value="Submit" name="submit"><input type="reset" value="Reset" name="rest"></p>
    			</form>
    			');
    		}
    		function message($text) 
    			{
    				echo($text);
    		}
    }
    
    
    function safe_sql ($text) 
    	{
    	return htmlspecialchars(mysql_real_escape_string($text)); 
    }
    
    
    ?>
    Toon Meer

    en dan nog config.php:

    PHP
    $config = array();
    $config['host'] = "localhost";
    $config['database'] = "xxxx";
    $config['username'] = "xxxx";
    $config['password'] = "xxxx";
    
    
    
    
    if (($config["host"]) && ($config["database"]) && ($config["username"]) && ($config["password"])) {
    	mysql_connect($config["host"],$config["username"], $config["password"]) or die(mysql_error());
    	mysql_select_db($config["database"]) or die(mysql_error());
    }
    else {
    	die("Configuration failed.");
    }
    Toon Meer

    commetaar op het script mag geleverd worden mits ik er ook echt is aan heb ;)

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Niels
    -1
    Berichten
    1.360
    • 14 mei 2009 om 22:20
    • #2

    Je gebruikt ten eerste al geen addslashes waardoor je sql injecties kan gebruiken;
    Je gebruikt variabelen die niet eens hoeven. De criminals manier is om een variabele nog een keer te defineren in een variabele dat is niet de OOP manier noch in een klasse;
    HTML en PHP behoren gescheiden te blijven;

    -1

  • Patrick
    Back in the game
    Ontvangen Reacties
    52
    Berichten
    1.417
    • 14 mei 2009 om 22:25
    • #3

    waarom is met addslashes injectie niet mogelijk dan? omdat het alleen van ' naar ' gaat? kan je dat uitleggen.

    variable's doe ik om zelf wat makkelijker een overzicht te houden het hoeft inderdaad niet. ik kan ook gewoon alle names veranderen in $_POST['name']

    html + php gescheiden dan moet je doormiddel van een template parser gaan werken neem ik aan?

    Nieuwe reactie samengevoegd met originele reactie op 14.05.09 22:42:16:
    edit;

    safe_sql functie toegevoegd.
    Niels nu is hij beveiligd tegen injections right?

  • Durk
    Intermediate
    Berichten
    365
    • 14 mei 2009 om 22:44
    • #4

    html + php gescheiden houden doe ik meestal zo:

    PHP
    <?php
    //iets van php
    ?>
    <html>hier je html
    desnoods echoën: <? echo iets ?></html>
    <?php
    //weer iets van php indien nodig
    ?>

    En niet:

    PHP
    <?php
    //hierlappen php
    //je html zoals
    echo 'van alles van HTML';
    ?>
  • Patrick
    Back in the game
    Ontvangen Reacties
    52
    Berichten
    1.417
    • 14 mei 2009 om 22:47
    • #5

    mjah tis ook maar testje ;)
    maar voor de rest nu ook met die nieuwe functie is er nog iets wat anders moet?

  • Stefan.J
    Master
    Ontvangen Reacties
    9
    Berichten
    2.358
    • 14 mei 2009 om 23:06
    • #6

    Je gebruikt de class nu als een verzameling van functies. Dat is niet de bedoeling, en ook niet de kracht van OOP (eigenlijk is dit dus geen OOP). Ook hebben de functies binnen je class eigenlijk geen samenhang (output en validatie).

    PHP en HTML gescheiden houden, kan inderdaad met een template parser, maar gewoonweg het in twee verschillende bestanden stoppen (Het bestand met de HTML kent enkel simpele PHP, zoals echo, while en foreach).

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