PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (98): В начало « ... 90 91 92 93 [94] 95 96 97 98 »

> Найдено сообщений: 1459
ALEN Отправлено: 01 Ноября, 2008 - 00:53:33 • Тема: Авторизация • Форум: Напишите за меня, пожалуйста

Ответов: 32
Просмотров: 353
vitaliy_mad
ЧТо Вы так схватились за сессию, отпустите ее. Картинка следующая:
1) ПРи открытии любой страницы авторизованым пользователем - оставляем уникальный код (пусть это будут любые данные, например: base64((рандомный код заносящийся каждому юзеру)+idсесии .т.к она уникальна)) и еще из всего этого вычисляем хэш).
2) Если пользователь входит, но его сессия оборвана и нужно авторизоватся, обращаемся к БД, если конечно у нас есть наif кука.
3) Если это настоящий пользователь, то он авторизуется автоматом, если же нет - это украденый код, то злоумышленник войдет только под одним условием:
---- Если пользователь, после передачи данного кода, НЕ открывал страницы сайта ------
Если он открывал, то пароль в БД не будет найден и выскачит форма аторизации, как и в случае простого отсутствия кука.
ALEN Отправлено: 01 Ноября, 2008 - 00:38:46 • Тема: Авторизация • Форум: Напишите за меня, пожалуйста

Ответов: 32
Просмотров: 353
Парится и воравать номер сессии я бы не стал, может быстро стать не актульным. Думаю разработчики PHP по этому поводу придумали еще свои интриги, я просто еще в это не лез. А вот, когда работаем с Cookies то, прийдется работать с БД, чтоб защитится. В куках не нужно передавать только пароль и логин, нужно передавать независимые данные, т.к. будет единственны шанс у злоумышленника пройти между сразу после последнего посещением, т.к. после открытия новой страницы рандом и данные в куки обновятся. Следовательно такая система сработает, только если после передачи cookies злоумышленнику, пользовтель не должен открыть страницу сайта, только в этом случае данные с куков будут актуальны.

P.S. вытяните с этого мусора истину и поймите, что данный случай удобней всего. А так вообще заметте, что защита существует только для увеличения веса кода и никакого хакера она не остановит, только хакеры-делитанты ее пугаются.
ALEN Отправлено: 31 Октября, 2008 - 20:30:17 • Тема: Авторизация • Форум: Напишите за меня, пожалуйста

Ответов: 32
Просмотров: 353
В БД записываем все, что получится вытащить о пользователе. Например используем AJAX и тянем тип браузера, операционки и т.д. - записываем все в браузер в куке даем чисто наш уникальный код - например записаный в туже БД номер сессии. Потом при входе, если пользователь не авторизован и не имеет сессии - берем у него все данные и проверяем. Т.е. даже если злоумышлник скопирует номер куки, то ему еще прийдется использовать все-то же что и настоящего пользователя. Т.е. немного еще усложняется задача для взлома.
ALEN Отправлено: 31 Октября, 2008 - 20:16:26 • Тема: GD поворот строк • Форум: Программирование на PHP

Ответов: 2
Просмотров: 301
valenok
Благодарю, вот только жалко функция использует шрифты и без них нельзя.
ALEN Отправлено: 31 Октября, 2008 - 19:44:05 • Тема: Java Script и PHP • Форум: JavaScript & VBScript

Ответов: 11
Просмотров: 6369
MasterofCDM
Если найдешь метод проще и удобней и кроссбраузерный, как этот - будет интересно посмотреть - выкладывай сразу!
ALEN Отправлено: 31 Октября, 2008 - 16:10:55 • Тема: Java Script и PHP • Форум: JavaScript & VBScript

Ответов: 11
Просмотров: 6369
MasterofCDM
Пользуйтесь тем, что дал Champion.
(Добавление)
Вот пример скрипта:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. function createRequest() {
  3.     if (request != null)
  4.         return;
  5.  
  6.     try {
  7.         request = new XMLHttpRequest();
  8.     } catch (trymicrosoft) {
  9.         try {
  10.             request = new ActiveXObject("Msxml2.XMLHTTP");
  11.         } catch (othermicrosoft) {
  12.             try {
  13.                 request = new ActiveXObject("Microsoft.XMLHTTP");
  14.             } catch (failed) {
  15.                 request = null;
  16.             }
  17.         }
  18.     }
  19.  
  20.     if (request == null)
  21.         alert(" :-( ___ Error creating request object! ");
  22.  
  23. }
  24.  
  25.  
  26. function checklog() {
  27.     createRequest();
  28.     var txt = "вася";
  29.     var url = "skript.php";
  30.     request.onreadystatechange = updateRandNumber;
  31.     request.open("POST", url, true);
  32.     request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  33.     request.send("user="+txt);
  34. }
  35.  
  36.  
  37.  
  38. function updateRandNumber() {
  39. if (request.readyState == 4) {
  40. request.responseText;
  41. }}
  42.  

(Добавление)
request.send("user="+txt); - эта часть передает запрос, в данном случае POST.

Ниже функция "request.responseText" - данная штука - это то, что вывидит скрипт skript.php
ALEN Отправлено: 31 Октября, 2008 - 16:07:34 • Тема: GD поворот строк • Форум: Программирование на PHP

Ответов: 2
Просмотров: 301
imagestring() - Нужна аналогичная функция, но с возможостью поворота строки на определенный %. Или просто аналог, но с результатом поворота строки.
ALEN Отправлено: 27 Октября, 2008 - 14:34:21 • Тема: Человеко понятный URL • Форум: Apache и другие веб-серверы

Ответов: 9
Просмотров: 715
Serga
Хотя знаеш я листал сейчас немного и мне кажется - это на сервере, что-то - нужно читать как минимум htaccess
(Добавление)
А кодировка на самой странице не имеет значения
ALEN Отправлено: 27 Октября, 2008 - 13:27:38 • Тема: Человеко понятный URL • Форум: Apache и другие веб-серверы

Ответов: 9
Просмотров: 715
Serga
Т.е. тут чисто принципиально русский текст. Тогда нужно углублятся ниже нежели сервер, т.к. если у Вас уже в некоторых браузерах все ок, то нужно смотреть проблему браузеров и т.д.

Serga пишет:
1. Гугл с яндексом понимают транслит, но не всегда.

Скорей русский текст не всегда, а вот транслит - это чисто из a-z делать запросы (ну и еще некотрые символы) - его он всегда будет отлично читать.
ALEN Отправлено: 27 Октября, 2008 - 13:23:01 • Тема: preg_replace_callback • Форум: Регулярные выражения

Ответов: 9
Просмотров: 432
Champion
PHP код может встретиться в начале строки, в конце, только php, может вообще его не быть, может встретится несколько раз.
ALEN Отправлено: 27 Октября, 2008 - 12:12:56 • Тема: preg_replace_callback • Форум: Регулярные выражения

Ответов: 9
Просмотров: 432
Champion
В том случае да, но мне нужен общий случай. Я не знаю как пользователям взбрендит вводить данные. А то чисто пример решения проблемы. Да и вобще, когда знаешь колличество всего можно подогнать все. Но это тормознет обработку, чего я не желаю. Нужен более простой вариант.
ALEN Отправлено: 27 Октября, 2008 - 10:20:07 • Тема: preg_replace_callback • Форум: Регулярные выражения

Ответов: 9
Просмотров: 432
Champion
Не все так просто:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. function phpcode($matches){
  4. //var_dump($matches);
  5. echo $matches[1];
  6. eval($matches[2]);
  7. echo $matches[3];
  8. }
  9. $asindex_a10="Привет вася <?php for(\$i=1;\$i<10;\$i++){ echo \$i; } ?> пока вася <?php for(\$i=10;\$i<20;\$i++){ echo \$i; } ?>";
  10. echo preg_replace_callback("|(.+)\<\?php(.*)\?\>(.+)|","phpcode",$asindex_a10);
  11. ?>
  12.  
ALEN Отправлено: 27 Октября, 2008 - 10:01:11 • Тема: preg_replace_callback • Форум: Регулярные выражения

Ответов: 9
Просмотров: 432
ВездеходЯ тоже знаю, но вот как обойти или альтернатива...
ALEN Отправлено: 27 Октября, 2008 - 09:41:26 • Тема: preg_replace_callback • Форум: Регулярные выражения

Ответов: 9
Просмотров: 432
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. function phpcode($matches){
  4. eval($matches[1]);
  5. }
  6. $asindex_a10="Привет вася <?php for(\$i=1;\$i<10;\$i++){ echo \$i; } ?> пока вася";
  7. echo $asindex_a10 = preg_replace_callback("|\<\?php(.*)\?\>|","phpcode",$asindex_a10);
  8. ?>
  9.  

В результате выдает:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. 123456789Привет вася пока вася
  3.  


Что-то тормажу, как сделать, чтоб ответ был:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. Привет вася 123456789 пока вася
  3.  
ALEN Отправлено: 27 Октября, 2008 - 09:14:53 • Тема: Cервис аккредитации PHP-разработчиков inPHP • Форум: Новости веб-технологий

Ответов: 39
Просмотров: 447
Я вообще пару раз прохожу, выбираю ответ - нажимою. После чего ничего не происходит, таймаут идет дальше, доходит до 3 секунд, нажимая повторно и меня перекидывает на несколько вопросов вперед, после чего в результате именно то колличество неправильных ответов, которое проскакивает. Просто в шоке.

Страниц (98): В начало « ... 90 91 92 93 [94] 95 96 97 98 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB