Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

Registratie

Anoniem
Mr.nuub
2 antwoorden
  • Hallo allemaal,

    ik heb nog een vraagje, ik heb een registratie script gemaakt en dat werkt ook.
    maar het probleem is dat ik zoveel keer als ik wil onder dezelfde inlognaam kan registreren.
    ik wil dus niet dat een gebruiker onder dezelfde naam kan registreren.

    weet iemand hoe ik dat in mijn code kan zetten?



    [code:1:4a333c014c]<?php require_once('Connections/testapplicatie.php'); ?>
    <?php
    if (!function_exists("GetSQLValueString")) {
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
    {
    if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
    }

    $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

    switch ($theType) {
    case "text":
    $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
    break;
    case "long":
    case "int":
    $theValue = ($theValue != "") ? intval($theValue) : "NULL";
    break;
    case "double":
    $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
    break;
    case "date":
    $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
    break;
    case "defined":
    $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
    break;
    }
    return $theValue;
    }
    }

    if (!function_exists("GetSQLValueString")) {
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
    {
    if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
    }

    $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

    switch ($theType) {
    case "text":
    $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
    break;
    case "long":
    case "int":
    $theValue = ($theValue != "") ? intval($theValue) : "NULL";
    break;
    case "double":
    $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
    break;
    case "date":
    $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
    break;
    case "defined":
    $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
    break;
    }
    return $theValue;
    }
    }

    $editFormAction = $_SERVER['PHP_SELF'];
    if (isset($_SERVER['QUERY_STRING'])) {
    $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
    }

    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
    $insertSQL = sprintf("INSERT INTO login (login, wachtwoord, email) VALUES (%s, %s, %s)",
    GetSQLValueString($_POST['login'], "text"),
    GetSQLValueString($_POST['wachtwoord'], "text"),
    GetSQLValueString($_POST['email'], "text"));

    mysql_select_db($database_testapplicatie, $testapplicatie);
    $Result1 = mysql_query($insertSQL, $testapplicatie) or die(mysql_error());
    }

    $query_Recordset1 = "SELECT * FROM login WHERE login = 'login'";
    $Recordset1 = mysql_query($query_Recordset1, $testapplicatie) or die(mysql_error());
    $row_Recordset1 = mysql_fetch_assoc($Recordset1);
    $totalRows_Recordset1 = mysql_num_rows($Recordset1);
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    </head>

    <body>
    <form id="form1" name="form1" method="POST" action="<?php echo $editFormAction; ?>">
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <table width="400" align="center">
    <tr>
    <td width="114">Loginnaam:</td>
    <td width="274"><input name="login" type="text" id="login" value="<?php echo $row_Recordset1['login']; ?>" /></td>
    </tr>
    <tr>
    <td>Wachtwoord:</td>
    <td><input name="wachtwoord" type="text" id="wachtwoord" value="<?php echo $row_Recordset1['wachtwoord']; ?>" /></td>
    </tr>
    <tr>
    <td>E-mail:</td>
    <td><input name="email" type="text" id="email" value="<?php echo $row_Recordset1['email']; ?>" /></td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td><label>
    <input type="submit" name="button" id="button" value="Submit" />
    </label></td>
    </tr>
    </table>
    <p>&nbsp;</p>
    <input type="hidden" name="MM_insert" value="form1" />
    </form>
    </body>
    </html>[/code:1:4a333c014c]
  • Hiervoor kan (/moet) je eigenlijk twee dingen doen. Ten eerste moet je het in de database onmogelijk maken dat dezelfde gebruikers naam vaker voorkomt, door middel van een UNIQUE CONSTRAINT (linkje).

    Verder zou ik vanuit de php checken of de gebruikers naam al bestaat. Dit moet je op twee plekken doen: bij het tonen van het registratie formulier en bij het daadwerkelijke registreren. Je kan hiervoor de count opvragen van de naam.. dat zou iets als dit worden:
    SELECT count(*) FROM tblUser WHERE name="naam hier"

    Succes ;)

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.