Как создать макет igoogle (перетаскивать и хранить) с помощью PHP и AJAX? - PullRequest
4 голосов
/ 04 мая 2009

В igoogle мы можем перетаскивать модули, а затем, если мы выйдем из браузера и снова откроем его, положение каждого модуля останется прежним. Я проверил несколько вещей:

  1. Когда вы не авторизованы, igoogle сохраняет положение модулей в моих файлах cookie (кеш). Потому что, если я очищаю кеш, он возвращается в исходное положение.

  2. Когда я вошел в систему, после позиционирования модулей, даже я выхожу из системы и очищаю кэш, если я снова войду в систему, модули остаются прежними, не возвращаясь в исходное положение.

Что я хочу спросить:

  1. Как сохранить положение модулей для зарегистрированного и не авторизованного пользователя?

  2. Каковы необходимые навыки? (Я использую php, mysql и jquery)

  3. Есть ли хорошие уроки, на которые я могу сослаться?

Ответы [ 2 ]

6 голосов
/ 04 мая 2009

Здесь есть очень хорошее руководство: http://nettuts.com/tutorials/javascript-ajax/inettuts/

Вам нужно будет хранить данные пользователей в таблице MySQL. Может быть, настроить столбец «столбец / строка» в вашей таблице MySQL с идентификатором связанного содержимого. Если у вас нет никаких знаний о реляционных базах данных, было бы неплохо начать с этого. Если вы понимаете основы БД, то это будет простой запрос на обновление, чтобы сохранить информацию о пользователях на основе файла cookie, срок действия которого истекает в будущем.

Если вы разрешаете пользователям входить в систему (например, в Google), то использование файлов cookie не является необходимым (но все же может быть полезным), поскольку вы можете использовать данные позиции div, хранящиеся в вашей таблице mysql.

1 голос
/ 05 мая 2009

Логика за перетаскиванием

  1. используйте http://jqueryui.com/demos/sortable/, чтобы включить сортируемый список div
  2. обработать сортируемую ("toArray") базу данных
  3. загрузить его по порядку из БД, чтобы получить их на месте
...