Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Нужен маленький совет по php (https://forum.antichat.xyz/showthread.php?t=149002)

Fantom3D 17.10.2009 14:57

Нужен маленький совет по php
 
Я новичек, потому не смейтесь :) Я пишу форму авторизации, вот что есть:

PHP код:

<?php

require_once("../config.php");
connect ($dbhost$dbuser$dbpass$database);
    
        
$result mysql_query("SELECT * FROM users WHERE username = '".$_POST['username']."' and password = '".md5($_POST['password'])."' LIMIT 1") or die (mysql_error());
    if (
mysql_num_rows($result) == 0){
            echo
"<META HTTP-EQUIV=Refresh CONTENT=\"0; URL=loginfailed.html\">";
        exit();
    }
    else{
    
session_start();
    
$_SESSION['adminUser'] = $admin_user;
    
$_SESSION['adminPassword'] = $admin_pass;
    
$SID session_id();
    echo
"<META HTTP-EQUIV=Refresh CONTENT=\"0; URL=index.php\">";
    }

?>

В одном файле вводится логин и пароль, данные скидываются в этот файл, тут проверяется через базу логин и пароль, если все верно - дается кук.

ВОПРОС: Как сделать, чтобы в той же самой строке в базе, в которой проверяется логин и пароль также проверялось поле "administrator" на то, какя цифра в нем, 1 или ноль, и если 1 то давался кук, тоесть то что и сейчас, только еще один фактор проверяется. :)

http://i001.radikal.ru/0910/87/cee0ef19c69d.jpg

Помогите, люди)

gisTy 17.10.2009 15:04

mysql_fetch_array
Цитата:

http://www.php.ru/manual/function.mysql-fetch-array.html

Fantom3D 17.10.2009 15:07

gisTy
А не будете добры показать мой измененный фалик плиз...

gisTy 17.10.2009 15:15

PHP код:

<?php

require_once("../config.php");
connect ($dbhost$dbuser$dbpass$database);
    
        
$result mysql_query("SELECT * FROM users WHERE username = '".$_POST['username']."' and password = '".md5($_POST['password'])."' LIMIT 1") or die (mysql_error());
$row mysql_fetch_array($resultMYSQL_ASSOC);
echo 
$row['adminitrator'];
?>

выведет тебе значение колонки administrator.
дальше сам додумаешь
P.S. такие запросы:
PHP код:

$result mysql_query("SELECT * FROM users WHERE username = '".$_POST['username']."' and password = '".md5($_POST['password'])."' LIMIT 1") or die (mysql_error()); 

не безопасны, фильтруй входящие данные

Fantom3D 17.10.2009 16:55

gisTy
Почему небезопасны? И как фильтровать? =)

Tem 17.10.2009 17:10

Fantom3D

Цитата:

mysql_real_escape_string ();
Цитата:

mysql_real_escape_string -- Экранирует специальные символы в строке, используемой в SQL-запросе, принмимая во внимание кодировку соединения.

L I G A 17.10.2009 20:46

для числовых данных используй intval(); //если его type скажем string оно приводится к 0

gisTy 17.10.2009 20:59

Цитата:

Сообщение от L I G A
для числовых данных используй intval(); //если его type скажем string оно приводится к 0

так же (int) можно


Время: 06:51