Трябва ми помощ за PHP функция

tyrla4eto

Registered
Здравейте,
как мога да направя така че когато някой се регистрирва да взима потребителското му име да проверява дали то съдържа определени от мен думи и ако не ги съдържа да го регистрира?
 
" каза:
Здравейте,
как мога да направя така че когато някой се регистрирва да взима потребителското му име да проверява дали то съдържа определени от мен думи и ако не ги съдържа да го регистрира?

PHP:
$username = $_POST['username'];
if($username == 'tyrla4eto' || $username== 'admin'){
echo "Не може да използвате т'ва име.. пробвай с друго.";
} else {
//query
}
 
Или това
PHP:
$username = "Ivan[dsa]-_+";
if(!preg_match("/^[a-zA-Z0-9]+$/", $username))
{
    echo "въвели сте невалиден символ";
}
 
Имах предвит ако примерно се пробваш да се регистрирап с името administrator4eto и да проверява ако това потребителско име съдържа думата admin, administrator и т.н. да не му позволява регистрация..
 
tyrla4eto каза:
Имах предвит ако примерно се пробваш да се регистрирап с името administrator4eto и да проверява ако това потребителско име съдържа думата admin, administrator и т.н. да не му позволява регистрация..
PHP:
$username = "admin4eto";
if(!preg_match("/^[admin]+$/", $username))
{
    header("Location: index.php");
}
else {
// query
}
 
tyrla4eto каза:
Имах предвит ако примерно се пробваш да се регистрирап с името administrator4eto и да проверява ако това потребителско име съдържа думата admin, administrator и т.н. да не му позволява регистрация..

... ако искаш да забраниш и други думи просто добави || $username == 'текст'

:shock:


$username = $_POST['username'];
if($username == 'administrator' || $username== 'admin' || $username== 'administrator4eto'){
echo "Не може да използвате т'ва име.. пробвай с друго.";
} else {
//тук другия код
}
 
А ако иска да забрани

admin
admina
admin4e
admin4eto
administratora
administration
adminasumaz
admin2
admin3

И т.н. защо да проверява за всяка следваща като просто може да провери дали се съдържа думата admin.

Кода на @Styl3rbg би трябвало да му свърши работа , пък ако не може да пробва този:

PHP:
$username = $_POST['username'];
if (!preg_match("/admin/i",$username))
{
echo "ОК";
}
else
{
echo "Името ви съдържа забранена дума. Моля изберете си ново име.";
}
 
Примери колкото щеш.. ако ще да ги изкарва от таблица и да ги вкарва в масив или да не е в масив - се тая.., няма да си играе да отвара по-сто пъти страницата и да редактира. Един вид цензура за потребителско име.

Може и с твоя пример, а може и така.. /както казах както иска той/

PHP:
function verify_username($username) {
if (mysql_fetch_array(mysql_query("SELECT id FROM `table` WHERE value='$username'"))) {
	$check = 'cenzora';
} else {
$check = 'false';
}
return $check;
}
if (verify_username($username) == 'cenzora') {
echo "ne moje";
} else {
//koda
}


[sql]CREATE TABLE `table` (
`id` int(200) NOT NULL AUTO_INCREMENT,
`value` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ;



INSERT INTO `table` (`id`, `value`) VALUES
(1, 'admin');

[/sql]
 
Малко не Ви разбрах, но вижте сега какво искам да направя. Когато някой се опитва да се регистрира и използва нецензурна дума в потребителското си име примерно EBALsamva или azsamhuy и т.н. Искам скрипта да проверя потребителското име зададено в полето за такива нецензурни думи и ако то съдържа да не му позволява регистрация.


Извинявам се за 2-те думи по-горе, но просто няма как да там пример иначе..
 
Добре, а когато искам да добавям нови думи така ли трябва да стане?

PHP:
$username = "ebaL-baba_si";
if(!preg_match("/^[eba][duma1][duma2][duma3]+$/", $username))
{
    header("Location: index.php");
}
else {
// query
}
 
tyrla4eto каза:
Добре, а когато искам да добавям нови думи така ли трябва да стане?

PHP:
$username = "ebaL-baba_si";
if(!preg_match("/^[eba][duma1][duma2][duma3]+$/", $username))
{
    header("Location: index.php");
}
else {
// query
}
да
 
Styl3rbg каза:
tyrla4eto каза:
Добре, а когато искам да добавям нови думи така ли трябва да стане?

PHP:
$username = "ebaL-baba_si";
if(!preg_match("/^[eba][duma1][duma2][duma3]+$/", $username))
{
    header("Location: index.php");
}
else {
// query
}
да


Хм, аз пък си мислих така:
PHP:
/(duma1|duma2|duma3)/i
 

Back
Горе