Главная страница
    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.006 c
15-1238776763
AlexDan
2009-04-03 20:39
2009.06.21
Созданы роботы, способные рассуждать


6-1203672859
Strate
2008-02-22 12:34
2009.06.21
Отловить открытие (закрытие) соединения


15-1239741954
Юрий
2009-04-15 00:45
2009.06.21
С днем рождения ! 15 апреля 2009 среда


15-1239929241
AIRDIGER
2009-04-17 04:47
2009.06.21
Пчему падает приложение при вызове BinToHex()


1-1207045289
dmitry_12_08_74
2008-04-01 14:21
2009.06.21
Как проверить при запуске программы, есть ли уже запущенная копия





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский