PHP.SU

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

Страниц (27): « 1 [2] 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 394
ПТО Отправлено: 20 Августа, 2015 - 13:08:20 • Тема: помогите составить регулярку на js с поиском строковых значений • Форум: JavaScript & VBScript

Ответов: 18
Просмотров: 1979
Мелкий пишет:
Итерируете свой массив. Если по проверяемой строке indexOf вернул -1, то сразу возвращаете false. Если успешно вышли из цикла - возвращаете безусловное true.

итерируйте?
Можно чуть-чуть написать?
ПТО Отправлено: 20 Августа, 2015 - 11:51:22 • Тема: помогите составить регулярку на js с поиском строковых значений • Форум: JavaScript & VBScript

Ответов: 18
Просмотров: 1979
Я вообще не понимаю регулярные выражения, если можно без них, то оно и к лучшему:

Задача такая, сам решить не пробовал:

Есть строка, например "Выпить чаю и съесть несколько вкусных круассанов"

есть массив из отдельных слов или их частей ['скольк', 'руасс', 'есть'].

Надо вернуть true, если каждое из слов есть в искомой строке, причем, как видите, части слов тоже. Порядок слов в массиве роли не играет. В каждом элементе массива только по одному слову, пробелов там нет.
В нашем случае вернет true.

Как реализовать это? В плагине datatables.net такое реализовано
Не понял
ПТО Отправлено: 20 Августа, 2015 - 11:38:38 • Тема: Как добавить куки в данный код? • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 537
CODE (javascript):
скопировать код в буфер обмена
  1. var fn = (function(window, document) {
  2.     var fn = {};
  3.     Object.defineProperty(fn, 'cookie', {
  4.         value: (function() {
  5.             var c = {};
  6.  
  7.             c.get = function(name) {
  8.                 var cookie = " " + document.cookie;
  9.                 var search = " " + name + "=";
  10.                 var setStr = null;
  11.                 var offset = 0;
  12.                 var end = 0;
  13.                 if (cookie.length > 0) {
  14.                     offset = cookie.indexOf(search);
  15.                     if (offset != -1) {
  16.                         offset += search.length;
  17.                         end = cookie.indexOf(";", offset)
  18.                         if (end == -1) {
  19.                             end = cookie.length;
  20.                         }
  21.                         setStr = unescape(cookie.substring(offset, end));
  22.                     }
  23.                 }
  24.                 return setStr;
  25. //                var matches = document.cookie.match(new RegExp("(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"));
  26.             //                return matches ? decodeURIComponent(matches[1]) : undefined;
  27.             };
  28.  
  29.             c.set = function(name, value, options) {
  30.                 options = options || {
  31.                     'path' : "/"
  32.                 };
  33.  
  34.                 var expires = options.expires;
  35.  
  36.                 if (typeof expires == "number" && expires) {
  37.                     var d = new Date();
  38.                     d.setTime(d.getTime() + expires * 1000);
  39.                     expires = options.expires = d;
  40.                 }
  41.                 if (expires && expires.toUTCString) {
  42.                     options.expires = expires.toUTCString();
  43.                 }
  44.  
  45.                 value = encodeURIComponent(value);
  46.  
  47.                 var updatedCookie = name + "=" + value;
  48.  
  49.                 for (var propName in options) {
  50.                     updatedCookie += "; " + propName;
  51.                     var propValue = options[propName];
  52.                     if (propValue !== true) {
  53.                         updatedCookie += "=" + propValue;
  54.                     }
  55.                 }
  56.  
  57.                 document.cookie = updatedCookie;
  58.             };
  59.  
  60.             c.del = function(name) {
  61.                 c.set(name, "", {
  62.                     expires: -1
  63.                 });
  64.             };
  65.             return c;
  66.  
  67.         })(),
  68.         writable: false,
  69.         configurable: false,
  70.         enumerable: false
  71.     }
  72.     );
  73.     return fn;
  74. })(window, document);


вызывать так:
fn.cookie.set('mycookie', 12);
fn.cookie.get('mycookie');

В общем, смотрите, разбирайтесь
ПТО Отправлено: 06 Августа, 2015 - 16:29:17 • Тема: Немного о токенах и CSRF • Форум: JavaScript & VBScript

Ответов: 14
Просмотров: 2602
DeepVarvar пишет:
ПТО пишет:
полный рандом (случайным образом)
Используешь хардварный генератор с получением энтропии из окружающей среды?

прямо в точку
ПТО Отправлено: 06 Августа, 2015 - 16:10:29 • Тема: Немного о токенах и CSRF • Форум: JavaScript & VBScript

Ответов: 14
Просмотров: 2602
[quote=Ch_chov]Зависит от того, как вы этот секрет создаете. [/quot]
полный рандом (случайным образом)
ПТО Отправлено: 06 Августа, 2015 - 14:46:53 • Тема: Немного о токенах и CSRF • Форум: JavaScript & VBScript

Ответов: 14
Просмотров: 2602
DeepVarvar пишет:
Т.е. на протяжении всего срока пока пользак залогинен в системе, секрет не изменяется?
В таком случае, нет, от CSRF не спасет.

andrewkard пишет:
DeepVarvar
Как злоумышленник может узнать secret жертвы?

DeepVarvar пишет:
Защем ему узнавать? В его примере он всегда одинаковый.

DeepVarvar,
Вы, уважаемый, сами себе противоречите.
Секрет генерируется при авторизации пользователя.
Да, пока пользователь залогинен, секрет остается неизменным. А вы как хотели?

andrewkard прав, утверждая, что злоумышленник не сможет узнать secret жертвы на протяжении всего срока его "залогиненности"
ПТО Отправлено: 06 Августа, 2015 - 13:34:24 • Тема: Немного о токенах и CSRF • Форум: JavaScript & VBScript

Ответов: 14
Просмотров: 2602
DeepVarvar пишет:
Что ты понимаешь под словом "авторизация"?

ввод логина и пароля на стороне клиента, проверка на стороне сервера такого логина и такого пароля, инициация сессии.
+ запись в сессию secret
ПТО Отправлено: 06 Августа, 2015 - 11:49:54 • Тема: Немного о токенах и CSRF • Форум: JavaScript & VBScript

Ответов: 14
Просмотров: 2602
будет ли от CSRF защита вида token=secret
вместо принятой token = salt + ":" + MD5(salt + ":" + secret)

Ситуация, допустим, такая: при авторизации на сервере генерируется secret.
В каждую форму в виде чего угодно (допустим, в виде <input type="hidden" name="token" value="secret"/> ) дописывается это самый секрет.
Вопрос: будет ли обеспечена таким образом атака от CSRF?
Мои рассуждения: по мне, так да. Если сайт злоумышленника, на который зашла жертва, отправит запрос на наш сервер, то разницы между двумя токенами я не вижу: что token=secret, что token = salt + ":" + MD5(salt + ":" + secret) не возможно будет угадать.

Какие ваши рассуждения? Хорошо
ПТО Отправлено: 05 Августа, 2015 - 10:28:51 • Тема: Есть ли еще что, помимо кук • Форум: JavaScript & VBScript

Ответов: 13
Просмотров: 1484
etoYA пишет:
Может я в чем то не прав, но задача была такой:

Я хочу, чтоб где то хранились данные, которые я могу подставлять при POST/GET запросе, да еще так, чтоб они не пересекалась с другими вкладками.

Если так, то зачем куки?

Задача была такой:

Я хочу, чтоб где то хранились данные, которые автоматически бы отправлялись при POST/GET запросе, да еще так, чтоб они не пересекалась с другими вкладками.
ПТО Отправлено: 04 Августа, 2015 - 14:09:59 • Тема: Как на js задать значение какому-нибудь заголовку? • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 656
andrewkard пишет:
Посмотрите в строну XMLHttpRequest:

CODE (javascript):
скопировать код в буфер обмена
  1. var xhr = new XMLHttpRequest();
  2. xhr.open('GET', 'phones.json', false);
  3. xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
  4. xhr.send();

Отлчино! А для синхронных запросов есть-что-нибудь подобное?
ПТО Отправлено: 04 Августа, 2015 - 09:21:27 • Тема: Как на js задать значение какому-нибудь заголовку? • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 656
Есть задача: нужно задать значение хоть какому-нибудь заголовку (можно определить свой заголовок):
например, referer
я это представляю так:
CODE (javascript):
скопировать код в буфер обмена
  1. document.myvar = 1;

Но как тогда включить переменную myvar в заголовок?
или
CODE (javascript):
скопировать код в буфер обмена
  1. document.referrer = '1';

Но так значение заголовку не назначить, эта переменная только на чтение

Вот список заголовков, отсылаемых на сервер:
Спойлер (Отобразить)
ПТО Отправлено: 04 Августа, 2015 - 08:18:55 • Тема: Есть ли еще что, помимо кук • Форум: JavaScript & VBScript

Ответов: 13
Просмотров: 1484
DeepVarvar пишет:
ПТО пишет:
можно ли одной и той же куке на одном и том же адресе дать два разных значения
Конечно -- сессии.

Как? Можно куки различать по адресу:
setcookie("testcookie", "value1hostonly", time(), "/", ".example.com", 0, true);
если путь ("/") одинаковый, тот куки с одинаковым именем будут перезаписывать друг друга
ПТО Отправлено: 03 Августа, 2015 - 21:20:58 • Тема: Есть ли еще что, помимо кук • Форум: JavaScript & VBScript

Ответов: 13
Просмотров: 1484
Такой вопрос:
можно ли одной и той же куке на одном и том же адресе дать два разных значения, каждое в своем окне, и чтобы они не перезаписали друг друга? Насколько я знаю, нет.

Или в html <head> заголовке можно указать параметр, который будет с каждым запросом автоматически добавляться к запросу?
ПТО Отправлено: 03 Августа, 2015 - 13:00:19 • Тема: Есть ли еще что, помимо кук • Форум: JavaScript & VBScript

Ответов: 13
Просмотров: 1484
ну, или второй вариант: перед каждым запросом (синхронным, асинхронным, POST, GET) добавлять в него переменную. Тогда как это сделать, но не перебирать каждый запрос, а чтобы на автомате добавлялось. Закатив глазки
ПТО Отправлено: 03 Августа, 2015 - 09:41:27 • Тема: Есть ли еще что, помимо кук • Форум: JavaScript & VBScript

Ответов: 13
Просмотров: 1484
задача стоит такая: каждый раз при отправке POST или GET запроса от браузера к серверу нужно передавать определенную переменную. В список отсылаемых переменных (формы или адресной строки типа ?key=val1, или mysite/val1/) включать не хочу.

Я реализовал это с помощью кук, устанавливаешь значение куки, и она с каждым запросом передается на сервер. Удобно, что надо. Но есть один минус: кука устанавливается на все вкладки браузера. То есть, если на одной вкладке в браузере поменять значение куки, то на другой она тоже поменяется. А мне надо, чтобы на каждой открытой вкладке было бы свое значение.

есть какие-нибудь другие способы реализовать это? Может быть, другой механизм? Хм
Адресная строка может быть одна и та же. В одной вкладке - один val1, в другой - val2

Спасибо за ответы

Страниц (27): « 1 [2] 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB