Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.06.21;
Скачать: [xml.tar.bz2];

Вниз

Совместный доступ   Найти похожие ветки 

 
dmk ©   (2009-04-16 01:10) [0]

Привет! Пишу галлерею изображений. Встал в тупик.
Если пользователь выбрал галлерею №1, то соответственно нужно это
записать где-то. Записываю в файл, но пользователь №2 в это же время
выбирает другую категорию и это надо куда то записать. В тот же
файл - порлучится ерунда. Пользователи будут видеть попытки друг-
друга сменить категорию. Если записывать в cookie, тоже вроде не
решение, т.к. кто-то их может отключить. Как быть в таком случае?
Единственное решение пришедшее на ум - создавать для каждого
пользователя на сервере свой файл. Как решают такие проблемы?


 
tButton ©   (2009-04-16 01:21) [1]

session_start();
$_SESSION["gal"] = $picked-gallery;


 
dmk ©   (2009-04-16 01:29) [2]

А "gal" это что? Уникальный идентификатор?
Как различать пользователей или это автоматически?


 
antonn ©   (2009-04-16 01:34) [3]

массив $_SESSION уникален для каждого юзера. в нем создается эта переменная.
так же неплохо зарекомендовал себя $_GET %)))


 
dmk ©   (2009-04-16 01:40) [4]

Ясно. Спасибо :-)


 
dmk ©   (2009-04-16 01:42) [5]

А кол-во переменных на сессию не ограничено?


 
KilkennyCat ©   (2009-04-16 03:04) [6]

Этот вопрос надо задавать хостеру. У него ресурсы не резиновые.


 
tButton ©   (2009-04-16 03:21) [7]

re [5]
в принципе - не ограничено
данные сессии хранятся на жестком диске
отталкивайся от этого


 
antonn ©   (2009-04-16 22:45) [8]

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


 
dmk ©   (2009-04-16 22:50) [9]

>чем не нравится переменная в url?
Так ведь изначально сделано так:
В html-код вставлен PHP-скрипт, в котором формируется список URL
с параметрами галлереи (ID и так далее). Этот код внедрен через SSI.
По умолчанию выделена категория №1. По клику этот же скрипт рисует
новые ссылки с новой выбранной категорией, но ее нужно сохранить,
иначе скрипт по молчанию выведет опять категорию по умолчанию, т.е. №1.
После прорисовки скрипт вызыват страницу содержащую этот же скрипт.


 
dmk ©   (2009-04-16 22:51) [10]

по молчанию -> Sorry очепятка


 
antonn ©   (2009-04-17 00:15) [11]

if(isset($_GET["cat"]) && isnum($_GET["cat"])){
 //рисуем ссылки с категорией cat
 //echo "<a href=\"index.php?galery&cat=".$_GET["cat"]."\">url</a>";
}else{
 //рисуем просто ссылки
 //echo "<a href=\"index.php?galery\">url</a>";
}

или я чего не понял? :)


 
dmk ©   (2009-04-17 00:49) [12]

У меня сейчас так:

$click = $_GET["category"];//В параметре выбор по клику
$call_page = "index.html";

$selected = GetSelectedCategory();//Читаем, что было записано в прошлый раз
if (!$click == 0) //Запустили по клику с параметром ?category=id <> 0
 {
  SetSelectedCategory($click);//Запись выбранной категории
  $selected = GetSelectedCategory();
  header("Location: $call_page");
  exit;
 };

 $num_records = GetCategoryCount();
 //phpinfo(INFO_VARIABLES);

 ob_start();//Начинаем кэшировать страницу
 echo "<span class=\"neg_small_cyan_u\">";//Используем свой стиль для вывода ссылок
 for ($i = 0; $i < $num_records; $i++)
   {
    $rec = ReadCategoryRec($i);//Читаем запись
 $data_id = $i + 1;//Индекс категории начинается с единицы
 $data_str = rtrim($rec["name"]);//Название категории
 if ($i == ($selected - 1)) { $sel = "›"; } else { $sel = ""; };
    echo "<a href=\"eg_category_load.php?category=$data_id"."\">".$data_str." </a> ".$sel.$br;//Выводим ссылки на запрос по категориям
   };//for
 echo "и еще...";
 echo "</span>";
 header("Location: $call_page");
 ob_end_flush();


 
antonn ©   (2009-04-17 00:57) [13]

можно сделать чпу на htaccess :)
site.ru/galery/12/index.html вебсервер перенаправляет запросы скрипту обычными параметрами урла :)


 
dmk ©   (2009-04-17 01:08) [14]

У меня $_SESSION отлично заработало. Думаю без выкрутасов надо.


 
antonn ©   (2009-04-17 01:20) [15]

ну не знаю, по мне более юзабельно когда в адресной строке вводится то, что я хочу получить, а так костыль какой то :)


 
dmk ©   (2009-04-17 01:44) [16]

Так у меня тоже выводится. Вот глянь: http://ns1.expert-graphics.ru


 
antonn ©   (2009-04-17 09:12) [17]

там мож рыба такая, я жму на ссылки в "Что мы делаем?", и ничего не происходит, страница просто обновляется, но в адресной строке все так же index.html


 
dmk ©   (2009-04-17 09:34) [18]

Это шаблон. Ссылки по категориям, рядом с картинками.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2009.06.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.008 c
15-1238776763
AlexDan
2009-04-03 20:39
2009.06.21
Созданы роботы, способные рассуждать


13-1120595885
vveird
2005-07-06 00:38
2009.06.21
Технология .NET


15-1239631596
пикассо
2009-04-13 18:06
2009.06.21
delphi to builder


15-1239967211
passlight
2009-04-17 15:20
2009.06.21
Кому-нибудь нужны книги по программированию (базы данных, .NET)?


15-1239705931
12
2009-04-14 14:45
2009.06.21
Настройка Windows. Ограничить процессорное время для процесса





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский