19:14

Ну я убиваю людей и ем руки - всего две вещи.
Здравствуйте!
Пытаюсь сделать свой первый сайт на php для диплома (да и для души тоже), посвящённый русским веб-комиксам и урокам по их рисованию. Сложновато, потому что начинала с нуля, а время поджимает. Поэтому возникли некоторые вопросы по реализации:
Необходимо сделать что-то типа папок для каждого пользователя, в котором будут собраны страницы отдельного комикса. Например, как на deviantart.com, где можно сделать папку для отдельной категории рисунков и переместить их туда. При открытии профиля пользователя будут показываться все его комиксы (название, описание, жанр и т.д.), а при переходе на ссылку "почитать" будет открываться страница, где, собственно, его можно будет почитать. Вот как это реализовать - ума не приложу. Особенно возможность менять листы комикса местами, если пользователь неверно его загрузит.
Если кто-нибудь знает хотя бы логику реализации, подскажите, пожалуйста.

И ещё кое-что...

@темы: MySQL, PHP

Комментарии
15.04.2013 в 21:49

alhames.ru
Эээ.. ничего не понял. Вам нужна галерея с альбомами?
Что именно представляет сложность? Рассказывайте - попробуем разобраться..

Я не тупа, люблю программирование, хочу работать в этой сфере и дальше.
А можно небольшую проверку? :) Сколько будет 10 + 10?)

Программирование - такая штука, что сколько ни учи теорию, пока не начнешь что-то делать - ни черта не понятно будет. Вам нужно просто брать примеры каких нибудь задачек (например, таже галерея картинок), реализовывать их - и походу все будет ясно. Единственное что не узнать таким образом - это какое решение наиболее оптимальное, но по началу это и не особо нужно.
16.04.2013 в 00:08

Ну я убиваю людей и ем руки - всего две вещи.
alhames, да, типа галереи, но чтобы там можно было рисунки менять местами. Например, перетаскиванием. И как сделать именно альбомы, в которых можно такие изменения производить. Как сделать просто галерею - представляю.)

Сколько будет 10 + 10?)
Это вопрос с подвохом? Даже страшно отвечать.)

Программирование - такая штука, что сколько ни учи теорию, пока не начнешь что-то делать - ни черта не понятно будет. Вам нужно просто брать примеры каких нибудь задачек (например, таже галерея картинок), реализовывать их - и походу все будет ясно. Единственное что не узнать таким образом - это какое решение наиболее оптимальное, но по началу это и не особо нужно.
Примерно так и учу, разбираясь в чужих примерах. Но есть такие вещи, которые не понимаешь, даже принцип реализации. Как-то в голове не появляется алгоритм действий, не знаешь, с какой стороны подойти. Как с этой галереей, например. Какая база данных понадобится? Как добавить то-то или то-то?
16.04.2013 в 01:04

alhames.ru
Так, перетаскивание, он же drag&drop - это клиентская часть программирования. К php никакого отношения не имеет.
Вот тут что-то об этом написано - habrahabr.ru/post/125424/
В базе вам нужно будет видимо хранить пользователей, альбомы, изображения.. Вы регистрацию/авторизацию уже сделали?

Это вопрос с подвохом? Даже страшно отвечать.)
Да нет, тут не подвох, тут просто на форму мышления вопрос. А чего бояться - это ж не экзамен.

Примерно так и учу, разбираясь в чужих примерах.
Нет, не надо разбираться в чужом коде - надо пытаться создать свой. Глюченый, тяжелый, грязный - но свой. И с каждым разом он будет становиться все стабильнее и сложнее.
16.04.2013 в 01:35

Ну я убиваю людей и ем руки - всего две вещи.
Так, перетаскивание, он же drag&drop
Спасибо за ссылку. Думала, может, обойдётся без него. :-D

Вы регистрацию/авторизацию уже сделали?
Да. И рисунки загружать и выводить их, но вот как именно по альбомам их растащить. Чтоб юзер сам название придумал альбому. Тупо одна БД со списком всех юзеров, колоночкой "имя альбома" и адресом картинки? Что-то тут не так.

Да нет, тут не подвох, тут просто на форму мышления вопрос. А чего бояться - это ж не экзамен.
Ну тогда я бы ответила "20", ничего иного на ум не приходит.

Нет, не надо разбираться в чужом коде - надо пытаться создать свой. Глюченый, тяжелый, грязный - но свой. И с каждым разом он будет становиться все стабильнее и сложнее.
Так и живём, напишем - ошибки, исправим - опять ошибки. И получается долго, а хочется ведь сразу найти оптимальный и верный способ, чтоб точно успеть к сроку.)
16.04.2013 в 01:47

alhames.ru
Ну бд можно примерно такую:
user
id
name
pass

album
id
name
user_id

picture
id
album_id
name
file

Соответственно простая формочка создания альбома с всего одним параметром - имя альбома. После того как пользователь его создал, он переходит внутрь и там уже загружает изображения. У изображений, к примеру, может быть имя.
С драг эн дропом советую сейчас даже не заморачиваться - тут нужно знать нативный Javasсript как минимум. А в идеале еще и jQuery.. Чтобы перемещать изображение между альбомами, то под каждым изображением можно выводить обычный <select>, в котором выводить список существующих альбомов.

Ну тогда я бы ответила "20", ничего иного на ум не приходит.
Большинство так и ответит, но программисты обычно говорят "100", т.к. это бинарная система счисления.
16.04.2013 в 09:57

Ну я убиваю людей и ем руки - всего две вещи.
Спасибо большое за идею! Всё по полочкам разложилось после нашей короткой беседы.)
Можно тогда ещё, возможно, глупый, но важный вопрос? Не нашла, где сделать так, чтобы разделить основную страницу с контентом как бы на две части: сама галерея с картинками, а ниже комментарии от других пользователей. И чтоб на части с галереей помещалось, допустим, 20 изображений, а если их больше в альбоме, то появляются стрелки "вперёд-назад". И можно было бы листать, а комментарии и всё остальное не менялись бы. Не совсем представляю, каким образом это реализуется.

Идея с бинарной системой была, но я честно ответила то, что взбрело в голову первым.))
16.04.2013 в 10:22

alhames.ru
Ну так, допустим изображение с id = 73 расположено по адресу /gallery.php?picture=73
Допустим у него 30 комментариев, но изначально выводятся только 10. Тогда чтобы увидеть следующие, мы переходим на /gallery.php?picture=73&page=2
В итоге id изображения у нас остался тот же и выберется оно же, а страница поменялась и мы можем сделать смещение в выборке комментариев:
SELECT * FROM `comment` WHERE `picture_id` = 73 LIMIT 10, 10

Где LIMIT 10 (смещение: это номер страницы минус один и умножить на количество комментариев на странице: (2-1)*10), 10 (количество комментариев на странице)

Соответственно если вам нужно листать изображения, а не комментарии - делаете смещение для них. Если нужно и то и то, то можно к примеру так: /gallery.php?id=3&gpage=4&cpage=2 - где gpage это страница галереи, а cpage это страница комментариев.
24.07.2013 в 15:57

Get lucky
alhames, 100 , будет, 100, и чечего там считать, вы учитывайте что сейчас люди не очень дружны с этим уровнем, при современных средах эти знания как-то особо не актуальны чтоб для всех и кажного ;)))

Расширенная форма

Редактировать

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail