Забрана на потребител до дадена страница!

cappy_

Registered
Здравейте, как мога да забраня на даден потребител в сайта ми да посещава дадена страница, имам ПХП Чат и искам някой като спами един вид да го баннвам/заглушавам в чата.., но да може да ползва другите екстри на сайта, т.е как да направя така, че примерно потребитерля Ivan, да не може да посещава страницата www.example.com/chat.php а всички други да може.. това ще ми трябва за админ панела и ако може да ми го напишете тоя скрипт.. само да въвеждам името му и натискам един бутон и толкова..
П.С Ако не ви е проблем, и можете, ми направете да има причина.., смисъл пиша му името пиша и причината натискам бутона Забрани и Ivan като се отиде на страницата chat.php да му пише причината..
 
Правиш една таблица БД

и в скрипва правиш провека

дали даден потребител е записан в тази таблица ако е да извежда, че няма права и, че е баннат
 
Не разбирам пхп до такава степен за да си пиша скриптове, затова ще помоля някой да ми го напише :)
 
Код:
CREATE TABLE IF NOT EXISTS `bannchat` (
  `id` int(11) NOT NULL auto_increment,
  `username` varchar(35) collate utf8_unicode_ci NOT NULL,
    PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;


config.php

Код:
$db_conn = @mysql_connect("localhost", "", "") or die(mysql_error()); // тук си пишете данните за връзка с MySQL
@mysql_select_db("bannchat", $db_conn) or die(mysql_error()); // тук ви е връзкта с базата данни.
mysql_query("SET NAMES cp1251");


във файла chat.php


най-отгоре слагаш следното

Код:
include "config.php";


$chek = SeSSION['username'] // или както си завел променливата за сесиите на потребителите
$sql = "SELECT  * FROM bannchat WHERE username = '$chek '";
$result = mysql_query($sql) or die (mysql_error());
$broi = mysql_num_rows($result);
if ($broi >= 1) {
         echo "<center>Нямаш права до тази страница. Моля обърнете се към администратор за евентуалната причина за това.</center>";
      } 
else{

//тук останалия код за чата
}
 
Значи това може да стане много лесно правиш си инпут поле (за теб админ панел) и след това с php кода трябва да изглежда така:

Код:
if(isset($_POST['button'])) 
	$valueve = htmlspecialchars($_POST['input']);
	$update = mysql_query("UPDATE `users` SET `ban` = 1 WHERE `username` = '$valueve'") or die (mysql_error());
	echo 'Потребителя е банат успешно!';
}
 
Нали се сещате, защото по-този начин ще банира потребителя от всяка страница? ;)
Добави нова колона и името например да бъде "page", след това си направи проверка във всяка страница.

Трябва да видя в архивите, имам някъде подобен код. По-късно, ако го открия ще го дам :?:
 
nom3r1 каза:
Нали се сещате, защото по-този начин ще банира потребителя от всяка страница? ;)
Добави нова колона и името например да бъде "page", след това си направи проверка във всяка страница.

Трябва да видя в архивите, имам някъде подобен код. По-късно, ако го открия ще го дам :?:
Чакам с нетърпение, често ми помагш. :?:
 

Back
Горе