Подскажите как улучшить скрипт?

shabalin-roman

Новичок
Скрипт проверяет авторизован ли посетитель на сайте. Правильно ли я всё сделал, работает все хочеться знать мнение других.

PHP:
<?php
 @mysql_connect ("88888.mysql.88888.ru", "88888", "88888");
 @mysql_select_db ("88888");
 @mysql_query ("set names utf8");
?>
<?php
 if ($_COOKIE ["Identificator"])
  {
  $Identificator = $_COOKIE ["Identificator"];
   $Request = mysql_query ("SELECT Identificator FROM Table WHERE Identificator = '$Identificator'");
   $Result = mysql_fetch_array ($Request);
   if ($Result ["Identificator"] == true)
    {
     include ("top.php");
     include ("left.php");
     include ("center.php");// Страница для авторизованного посетителя.
     include ("right.php");
     include ("bottom.php");
     exit;
    }
   else
    {
     header ("Location: http://www.88888.ru/login.php");
     exit;
    }
   exit;
  }
 else
  {
   include ("top.php");
   include ("left.php");
   include ("center.php");// Страница для не авторизованного посетителя.
   include ("right.php");
   include ("bottom.php");
   exit;
  }
?>
Заранее спасибо!!!
 

Духовность™

Продвинутый новичок
отвратительно, если честно
если ты новичок - прощается, но на самом деле все отвратительно

@ никогда не нужно использовать, в 99.99% случаев - ошибки нужно обрабатывать, не подавлять
Почитай про Sql инъекции
почитай про шаблоны

http://phpfaq.ru
 

Вурдалак

Продвинутый новичок
Здесь есть минимум две фактические ошибки:

1. $_COOKIE ["Identificator"] прямо подставляется в текст запроса, почитай про SQL Injection.

2. mysql_fetch_array() используется без какой-либо проверки на существование строки с запрашиваемым идентификатором в таблице Table.
 

Духовность™

Продвинутый новичок
здесь ещё куча дурацких if -ов
вместо того, что бы разбивать шаблон на блоки, достаточно создать ОДИН файл ОДНОЙ страницы и инклюдит в неё остальные футеры и хедекры
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
PHP:
$Request = mysql_query ("SELECT Identificator FROM Table WHERE Identificator = '$Identificator'");
Феерия, мне кажется, что ты и так знаешь что лежит в $Identificator, какой смысл этой строки?
 

AmdY

Пью пиво
Команда форума
c0dex
нет, это же проверка наличия записи, можно хоть SELECT 1 .....
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
кхм, да, я с логической точки зрения спросил, не посмотрев скрипт(
 
Сверху