[ This topic is solved ]
Ruud Alberts
08 March 05 / 14:14
Dag mensen,
is het mogelijk een controle uit te voeren op dubbele gebruikersnamen of emailadressen bij gebruik van OnSaved?
Ik zou natuurlijk OnCorrect kunnen gebruiken en zelf de query maken, maar dan is het niet mogelijk permitedit() te gebruiken.
Andere suggesties misschien?
Teye Heimans (Founder)
08 March 05 / 16:40
Quote: Ruud Dag mensen,
is het mogelijk een controle uit te voeren op dubbele gebruikersnamen of emailadressen bij gebruik van OnSaved?
Ik zou natuurlijk OnCorrect kunnen gebruiken en zelf de query maken, maar dan is het niet mogelijk permitedit() te gebruiken.
Andere suggesties misschien?
Je kunt zelf een controle functie schrijven. zoiets als dit bijvoorbeeld:
<?php
$form -> textField ( 'Username' , 'uUsername' , 'checkUserName' , 20 , 25 );
// check the username
function checkUserName ( $username ) {
$sql = mysql_query ( "
SELECT COUNT(1) FROM users WHERE uUsername = '" . mysql_escape_string ( $username ). "'"
) or die( mysql_error ());
if( mysql_result ( $sql , 0 ) != 0 ) {
return 'Please choose another username! This one is allready taken.' ;
} else {
return Validator :: IsString ( $username );
}
}
?>
Ruud Alberts
08 March 05 / 17:01
Dank voor de aanzet, ik zal morgen een poging wagen. Ben niet zo'n held in het programmeren van classes :)
Erik
12 March 05 / 23:13
Changed at 12 March 05 / 23:15
Hoi Ruud,
Misschien heb je hier iets aan, deze class controleert of de opgegeven waarde zich al bevind in de database, zo JA dan krijg je een foutmelding, zo NIET dan wordt alsnog een validation uitgevoerd.
Suc6 ermee!
Groet Erik.
<?
$form -> TextField ( "Nickname" , "nickname" , "NicknameValidator" );
$form -> TextField ( "E-mail adres" , "email" , "EmailValidator" );
?>
Nickname validator:
<?
function NicknameValidator ( $nickname ) {
$query = "SELECT COUNT(1) FROM tabel WHERE nickname = '" . $nickname . "'" ;
$sql = mysql_query ( $query ) or die( mysql_error ());
if( mysql_result ( $sql , 0 ) > 0 ){
return "Deze nickname bestaat al!" ;
} else {
return Validator :: IsVariabele ( $nickname );
}
}
?>
E-mail validator:
<?
function EmailValidator ( $email ) {
$query = "SELECT COUNT(1) FROM tabel WHERE email = '" . $email . "'" ;
$sql = mysql_query ( $query ) or die( mysql_error ());
if( mysql_result ( $sql , 0 ) > 0 ){
return "Dit e-mail adres bestaat al!" ;
} else {
return Validator :: IsEmail ( $email );
}
}
?>
Erik
12 March 05 / 23:19
SORRY!!!
Beetje dubbelop zie ik nu....