<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Авторизация на сайте]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=24785&amp;type=atom" />
	<updated>2012-10-23T06:13:53Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=24785</id>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=305359#p305359" />
			<content type="html"><![CDATA[<p>Временно сделал так: </p><p>В форме авторизации проверяет установлены&nbsp; ли куки ? Если да то перебрасывает на рабочую страницу. Если нет дает ввести логин/пароль <br /></p><div class="codebox"><pre><code>&lt;?php
  if (!is_null($_COOKIE[&#039;id&#039;])){
  echo &quot;Вы авторизованы сейчас вас перебросит на нужную страницу&quot;;?&gt;
  &lt;script language = &#039;javascript&#039;&gt;
    var delay = 5000;
    setTimeout(&quot;document.location.href=&#039;http://test/adminka/t&#039;&quot;, delay);
  &lt;/script&gt;

далее обычная html форма
&lt;?php  }</code></pre></div><p>После нажатия кнопки &quot;войти&quot; запускается скрипт, который проверяет&nbsp; MD5(логин+пароль+мусор) на наличие в базе. Если все хорошо клиенту в куки шлю ID и в базу записывается его ID и время до которого он действителен.<br /></p><div class="codebox"><pre><code>  
    if(isset($_POST[&#039;name&#039;])){
    include &#039;t/connect.php&#039;;
    $log=$_POST[&#039;name&#039;];
    $q=mysql_query(&quot;SELECT pas FROM auth WHERE login=&#039;$log&#039;&quot;) or die (&quot;нетуда&quot;);
    $f=mysql_fetch_row($q);
    if (MD5($_POST[&#039;name&#039;].$_POST[&#039;passwod&#039;].&quot;xb[ef[ef&quot;)==$f[0]){
      $tmp=MD5(rand(1,10).rand(10,25).date().&quot;ytgjyznrf!&quot;);
      $da=time()+3600;
      $lg=$_POST[&#039;name&#039;];
      if (mysql_query(&quot;UPDATE auth SET id=&#039;$tmp&#039;, limitD=&#039;$da&#039; WHERE login=&#039;$lg&#039;&quot;)){
    if (SetCookie(&quot;id&quot;,&quot;$tmp&quot;,time()+3600))
        header(&quot;Location: http://test/adminka/t&quot;);
    else
       exit(&quot;невозможно установить кукиесы&quot;);
     }
     else
      exit (&quot;нетуда брынь $mysql_error()&quot;);
    }
    else{
       echo &quot;неправильно введен пароль&quot;;
        header(&quot;Location: http://test/adminka&quot;);
    }
  }
 else 
    exit (&quot;за вами выехала милиция&quot;);</code></pre></div><p>На запароленых страницах проверяется ID пользователя и время до которого он действителен, если он не действителен удаляем.<br /></p><div class="codebox"><pre><code>    if(isset($_COOKIE[&#039;id&#039;])){
      include &#039;connect.php&#039;;
      $q=mysql_query(&quot;SELECT id, limitD FROM auth&quot;);
      $f=mysql_fetch_row($q);
      if ($_COOKIE[&#039;vmovsid&#039;] == $f[0] &amp;&amp; time() &lt; $f[1]){
      $a=rand(1,2); // ниче не делаем
      }
      else {
    setcookie(&#039;id&#039;,&#039;&#039;,time()-3600);
    exit (&quot;попробуйте авторизоваться заново&quot;);
      }
    }
    else
      exit(&quot;вы не прошли &lt;a href=&#039;/adminka&#039;&gt;авторизацию&lt;/a&gt; на сайте&quot;);</code></pre></div><p> <br />Единственная проблема это удаление кукиесов. Подскажите пожалуйста как это сделать ? Куки устанавливаются в локации&nbsp; /adminka&nbsp; &nbsp;а удалить пытаюсь из /adminka/t</p>]]></content>
			<author>
				<name><![CDATA[marikk]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20103</uri>
			</author>
			<updated>2012-10-23T06:13:53Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=305359#p305359</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304668#p304668" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>marikk пишет:</cite><blockquote><p>или лучше использовать&nbsp; идентификатор сеанса (SID), а не кукиесы ?</p></blockquote></div><p>На самом деле зависит от задачи, в своё время использовал <a href="http://www.phpfaq.ru/sessions">сессии</a>.</p>]]></content>
			<author>
				<name><![CDATA[buy-happiness]]></name>
				<uri>https://linuxforum.ru/profile.php?id=25919</uri>
			</author>
			<updated>2012-10-20T13:20:34Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304668#p304668</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304666#p304666" />
			<content type="html"><![CDATA[<p>Если вы промышляете процедурным программированием (не ООП), то тут все просто очень:<br />1) Юзер имеет $_SESSION[&#039;id&#039;]? Если нет, то может он имеет $_COOKIE[&#039;id&#039;]? Если да, то переносим ID из куки в сессию, если нет, то отказываем в доступе.<br />2) При залогивании проверяем является ли md5 (пароль+соль) введенный = md5 (пароль+соль) из БД (выборка по username/email и пр.). Если все ок - добавляем в $_SESSION[&#039;id&#039;] айдишник юзера + если стояла галочка &quot;Запомнить меня&quot;, то еще и куки добавляем (для чего - см. п.1).<br />3) При регистрации или добавлении пользователя делаем sha512 либо md5 из логина, и любых рандомных данных (время, дата и пр) соль и опять же шифруем ее с паролем.</p>]]></content>
			<author>
				<name><![CDATA[metra]]></name>
				<uri>https://linuxforum.ru/profile.php?id=18463</uri>
			</author>
			<updated>2012-10-20T13:15:49Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304666#p304666</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304629#p304629" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>-=Serj=- пишет:</cite><blockquote><p>Тоже интересно, можно ли обойтись без кукисов?</p></blockquote></div><p>Не совсем без кукиесов. На скок я понял &quot;механиз отслеживания сессий&quot; по возможности использует куки, а если они не поддерживаются, то всем компьютерам с таким внешним Ip будет присвоен единый идентификатор(и доступны одинаковые данные). Думаю на куках все-же будет лучше</p>]]></content>
			<author>
				<name><![CDATA[marikk]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20103</uri>
			</author>
			<updated>2012-10-20T06:54:10Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304629#p304629</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304627#p304627" />
			<content type="html"><![CDATA[<p>Тоже интересно, можно ли обойтись без кукисов?</p>]]></content>
			<author>
				<name><![CDATA[-=Serj=-]]></name>
				<uri>https://linuxforum.ru/profile.php?id=16175</uri>
			</author>
			<updated>2012-10-20T06:39:23Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304627#p304627</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304626#p304626" />
			<content type="html"><![CDATA[<p>или лучше использовать&nbsp; идентификатор сеанса (SID), а не кукиесы ?</p>]]></content>
			<author>
				<name><![CDATA[marikk]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20103</uri>
			</author>
			<updated>2012-10-20T06:34:03Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304626#p304626</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304625#p304625" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>buy-happiness пишет:</cite><blockquote><p>&quot;Сайт&quot; на PHP?</p><p>Первое что в глаза попалось, оба варианта вполне актуальны:<br /><a href="http://www.softtime.ru/info/authorization.php">Система авторизации HTTP-Basic</a><br /><a href="http://forum.1webdesign.ru/viewtopic.php?f=20&amp;t=81">Система авторизации на PHP</a></p><p><strong>UPD</strong><br /><a href="http://cashsite.ru/php-authorization.php">Авторизация на php</a> (тоже неплохой вариант)</p></blockquote></div><p>да. Сделаю пока так: <br />При вводе логина и пароля&nbsp; создается хэш сумма логин+пароль+(какая нить строка)<br />если соотношение логин/хэш правильное<br />в кукиесы ложится произвольный идентификатор, а на стороне сервера записывается этот идентификатор и время до которого он действиетелен<br />при каждом запросе на закрытую страницу будут сравниваться идентификаторы. <br /> Думаю так пойдет.</p>]]></content>
			<author>
				<name><![CDATA[marikk]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20103</uri>
			</author>
			<updated>2012-10-20T06:15:32Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304625#p304625</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304574#p304574" />
			<content type="html"><![CDATA[<p>&quot;Сайт&quot; на PHP?</p><p>Первое что в глаза попалось, оба варианта вполне актуальны:<br /><a href="http://www.softtime.ru/info/authorization.php">Система авторизации HTTP-Basic</a><br /><a href="http://forum.1webdesign.ru/viewtopic.php?f=20&amp;t=81">Система авторизации на PHP</a></p><p><strong>UPD</strong><br /><a href="http://cashsite.ru/php-authorization.php">Авторизация на php</a> (тоже неплохой вариант)</p>]]></content>
			<author>
				<name><![CDATA[buy-happiness]]></name>
				<uri>https://linuxforum.ru/profile.php?id=25919</uri>
			</author>
			<updated>2012-10-19T17:36:24Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304574#p304574</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Авторизация на сайте]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=304558#p304558" />
			<content type="html"><![CDATA[<p>Всем привет.<br />На хостинге крутится сайт, к которому хочу приделать что-то похожее на админку, а то уже порядком поднадоело руками в mysql ковыряться. Собственно стал в вопрос с алгоритмом аутентификации, в гугле нарыл несколько вариантов, но вот насколько они актуальны не знаю. Подскажите пожалуйста что лучше сделать в этом направлении ?</p>]]></content>
			<author>
				<name><![CDATA[marikk]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20103</uri>
			</author>
			<updated>2012-10-19T13:20:15Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=304558#p304558</id>
		</entry>
</feed>
