Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Зарегистрирован пользователь или нет?
 
 автор: inga   (20.06.2007 в 13:20)   письмо автору
 
 

при входе зарегистрированого пользователя записываю все к куки

                      $tmppos = strrpos($_SERVER['PHP_SELF'],"/") + 1; 
     $path = substr($_SERVER['PHP_SELF'], 0, $tmppos); 
     setcookie("name", $name, time() + 3600*24*2, $path); 
     setcookie("password", $pswrd, time() + 3600*24*2, $path); 
     setcookie("id", $auth['id'], time() + 3600*24*2, $path); 

ну и перенаправляю его на нужную страничку

echo "<HTML><HEAD> <META HTTP-EQUIV='Refresh' CONTENT='0; URL=ukr1/index.php'> </HEAD></HTML>"; 

эта страничка открыта для любого пользователя, но тот что зарегитрирован может заходить на опред ссылки.
вопрос как уже тут определить зарегистрирован он или нет?

if(тоесть тут мне нужно условие, что если он зарегест. то можно пускать сюда)
echo "<td width='10%' align='center' valign='top'><a href='item.php?indeks=".$row[1]."&type_show=".$type_show."'>".$row[1]."</a></td>";
else
echo "<td width='10%' align='center' valign='top'><a href='registr/vhod.php'>".$row[1]."</a></td>";

   
 
 автор: night_charter   (20.06.2007 в 13:37)   письмо автору
 
   для: inga   (20.06.2007 в 13:20)
 

Зарегистрируй сессию при входе, затем проверяй установлена ли сессия.

   
 
 автор: inga   (20.06.2007 в 14:59)   письмо автору
 
   для: night_charter   (20.06.2007 в 13:37)
 

как проверять установлена ли сесия?

   
 
 автор: Night_Charter   (20.06.2007 в 15:16)   письмо автору
 
   для: inga   (20.06.2007 в 14:59)
 


<?php
session_start
();
if(isset(
$_SESSION['user'])) {
echo 
"<a href=kabinet.html>вход в личный кабинет</a>";
}
?>

Примерно так ;)

   
 
 автор: inga   (20.06.2007 в 15:54)   письмо автору
 
   для: Night_Charter   (20.06.2007 в 15:16)
 

мне уже на самой страничке не понятно как понять зарегистрирован человек или нет

   
 
 автор: Trianon   (20.06.2007 в 16:15)   письмо автору
 
   для: inga   (20.06.2007 в 15:54)
 


<?php 
session_start
(); 
if(!isset(
$_SESSION['user'])) 
echo 
'Вернитесь <a href="javascript:history.go(-1);">назад</a>. 
 Для работы в личном кабинете необходимо пройти авторизацию'


?> 

   
 
 автор: inga   (20.06.2007 в 16:27)   письмо автору
 
   для: Trianon   (20.06.2007 в 16:15)
 

пишет ошибку:
Notice: A session had already been started - ignoring session_start() in /sata1/home/users/presaukr/www/www.presaukr.kiev.ua/online/ukr1/index.php on line 134

   
 
 автор: Trianon   (20.06.2007 в 16:47)   письмо автору
 
   для: inga   (20.06.2007 в 16:27)
 

То есть сессию Вы уже стартовали? Тогда, конечно, повторно её стартовать нет необходимости.

   
 
 автор: inga   (20.06.2007 в 16:59)   письмо автору
 
   для: Trianon   (20.06.2007 в 16:47)
 

запуталась полностью, помогите плиз.
есть регистрация, там все данные вводятся в базу, сесий там ни каких нет.
затем есть фаил index.php там размещен товар если пользователь зарегестрирован и авторизирован то ссылка ведет его дальше, если нет то он попадает в фаил vhod.php
вот он

<?
session_start
(); 
?>
<div align="center"> 
    <form name="mainform" method="post"  action="enter.php"> 
        <table height="160" cellPadding="0" width="509" border="0" > 
            <tr> 
                <td width="505" colSpan="2" height="59"> 
                <p align="center">Вы зарегистрированы<br> Можете войти </td> 
            </tr> 
            <tr> 
                <td class="stext" width="162" height="29">Ваше имя: </td> 
                <td class="stext" width="341" height="29"> 
                <input class="sinput" size="12" name="name"  value="<?=$_SESSION['name']?>"></td> 
            </tr> 
            <tr> 
                <td class="stext" width="162" height="29">Ваш пароль:</td> 
                <td class="stext" width="341" height="29"> 
<input maxLength="8" size="12" value name="password" value="<?=$_SESSION['password']?>"></td> 
            </tr> 
         
             
            <tr> 
                <td width="505" colSpan="2" height="32"> 
                <p align="center"> 
                <input class="sinput" type="submit" value="Вход" name="ok" ></td> 
            </tr> 
             
            </table> 
    </form> 
</div> 

enter.php его обработчик

if(!$_POST['name']) echo "<HTML><HEAD> 
                <META HTTP-EQUIV='Refresh' CONTENT='0; URL=http://presa.ua/online/ukr1/registr/vhod.php'> 
                </HEAD></HTML>"; 
if(!$_POST['pswrd']) echo "<HTML><HEAD> 
                <META HTTP-EQUIV='Refresh' CONTENT='0; URL=http://presa.ua/online/ukr1/registr/vhod.php'> 
                </HEAD></HTML>"; 
$name = $_POST['name']; 
$pswrd = $_POST['pswrd']; 
$user="name"; 
  $query = "SELECT * FROM users 
            WHERE login = '$name'"; 
  $ath = mysql_query($query); 
if($ath) 
  { 
    $auth = mysql_fetch_array($ath); 
    if($auth['password'] != $pswrd) 
    {               
      echo "<HTML><HEAD> 
                <META HTTP-EQUIV='Refresh' CONTENT='0; URL=http://presa.ua/online/ukr1/registr/vhod.php'> 
                </HEAD></HTML>"; 
    } 
    else 
    { 
         if(session_start()) 
         { 
           $_SESSION['name'] = $_POST['name']; 
           $_SESSION['password'] = $_POST['password']; 
           echo "<HTML><HEAD><META HTTP-EQUIV='Refresh' CONTENT='0; URL=http://presa.ua/online/ukr1/index.php'> </HEAD></HTML>"; //это путь в первоначальный фаил с товаром, но теперь ссылка должна пускать его дальше, он уже зарегестренный
         }

     } 



в index.php пишу

if(тут нужно как то узнатьон зарегестрирован ли)
echo "<td width='10%' align='center' valign='top'><a href='item.php?indeks=".$row[1]."&type_show=".$type_show."'>".$row[1]."</a></td>";
else
echo "<td width='10%' align='center' valign='top'><a href='registr/vhod.php'>".$row[1]."</a></td>";

и не че не работает, постоянно дает ссылку что на href='registr/vhod.php'

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования