Ну я убиваю людей и ем руки - всего две вещи.
Здравствуйте!
Пытаюсь сделать свой первый сайт на php для диплома (да и для души тоже), посвящённый русским веб-комиксам и урокам по их рисованию. Сложновато, потому что начинала с нуля, а время поджимает. Поэтому возникли некоторые вопросы по реализации:
Необходимо сделать что-то типа папок для каждого пользователя, в котором будут собраны страницы отдельного комикса. Например, как на deviantart.com, где можно сделать папку для отдельной категории рисунков и переместить их туда. При открытии профиля пользователя будут показываться все его комиксы (название, описание, жанр и т.д.), а при переходе на ссылку "почитать" будет открываться страница, где, собственно, его можно будет почитать. Вот как это реализовать - ума не приложу. Особенно возможность менять листы комикса местами, если пользователь неверно его загрузит.
Если кто-нибудь знает хотя бы логику реализации, подскажите, пожалуйста.
И ещё кое-что...
Пытаюсь сделать свой первый сайт на php для диплома (да и для души тоже), посвящённый русским веб-комиксам и урокам по их рисованию. Сложновато, потому что начинала с нуля, а время поджимает. Поэтому возникли некоторые вопросы по реализации:
Необходимо сделать что-то типа папок для каждого пользователя, в котором будут собраны страницы отдельного комикса. Например, как на deviantart.com, где можно сделать папку для отдельной категории рисунков и переместить их туда. При открытии профиля пользователя будут показываться все его комиксы (название, описание, жанр и т.д.), а при переходе на ссылку "почитать" будет открываться страница, где, собственно, его можно будет почитать. Вот как это реализовать - ума не приложу. Особенно возможность менять листы комикса местами, если пользователь неверно его загрузит.
Если кто-нибудь знает хотя бы логику реализации, подскажите, пожалуйста.
И ещё кое-что...
Что именно представляет сложность? Рассказывайте - попробуем разобраться..
Я не тупа, люблю программирование, хочу работать в этой сфере и дальше.
А можно небольшую проверку?
Программирование - такая штука, что сколько ни учи теорию, пока не начнешь что-то делать - ни черта не понятно будет. Вам нужно просто брать примеры каких нибудь задачек (например, таже галерея картинок), реализовывать их - и походу все будет ясно. Единственное что не узнать таким образом - это какое решение наиболее оптимальное, но по началу это и не особо нужно.
Сколько будет 10 + 10?)
Это вопрос с подвохом? Даже страшно отвечать.)
Программирование - такая штука, что сколько ни учи теорию, пока не начнешь что-то делать - ни черта не понятно будет. Вам нужно просто брать примеры каких нибудь задачек (например, таже галерея картинок), реализовывать их - и походу все будет ясно. Единственное что не узнать таким образом - это какое решение наиболее оптимальное, но по началу это и не особо нужно.
Примерно так и учу, разбираясь в чужих примерах. Но есть такие вещи, которые не понимаешь, даже принцип реализации. Как-то в голове не появляется алгоритм действий, не знаешь, с какой стороны подойти. Как с этой галереей, например. Какая база данных понадобится? Как добавить то-то или то-то?
Вот тут что-то об этом написано - habrahabr.ru/post/125424/
В базе вам нужно будет видимо хранить пользователей, альбомы, изображения.. Вы регистрацию/авторизацию уже сделали?
Это вопрос с подвохом? Даже страшно отвечать.)
Да нет, тут не подвох, тут просто на форму мышления вопрос. А чего бояться - это ж не экзамен.
Примерно так и учу, разбираясь в чужих примерах.
Нет, не надо разбираться в чужом коде - надо пытаться создать свой. Глюченый, тяжелый, грязный - но свой. И с каждым разом он будет становиться все стабильнее и сложнее.
Спасибо за ссылку. Думала, может, обойдётся без него.
Вы регистрацию/авторизацию уже сделали?
Да. И рисунки загружать и выводить их, но вот как именно по альбомам их растащить. Чтоб юзер сам название придумал альбому. Тупо одна БД со списком всех юзеров, колоночкой "имя альбома" и адресом картинки? Что-то тут не так.
Да нет, тут не подвох, тут просто на форму мышления вопрос. А чего бояться - это ж не экзамен.
Ну тогда я бы ответила "20", ничего иного на ум не приходит.
Нет, не надо разбираться в чужом коде - надо пытаться создать свой. Глюченый, тяжелый, грязный - но свой. И с каждым разом он будет становиться все стабильнее и сложнее.
Так и живём, напишем - ошибки, исправим - опять ошибки. И получается долго, а хочется ведь сразу найти оптимальный и верный способ, чтоб точно успеть к сроку.)
user
id
name
pass
album
id
name
user_id
picture
id
album_id
name
file
Соответственно простая формочка создания альбома с всего одним параметром - имя альбома. После того как пользователь его создал, он переходит внутрь и там уже загружает изображения. У изображений, к примеру, может быть имя.
С драг эн дропом советую сейчас даже не заморачиваться - тут нужно знать нативный Javasсript как минимум. А в идеале еще и jQuery.. Чтобы перемещать изображение между альбомами, то под каждым изображением можно выводить обычный <select>, в котором выводить список существующих альбомов.
Ну тогда я бы ответила "20", ничего иного на ум не приходит.
Большинство так и ответит, но программисты обычно говорят "100", т.к. это бинарная система счисления.
Можно тогда ещё, возможно, глупый, но важный вопрос? Не нашла, где сделать так, чтобы разделить основную страницу с контентом как бы на две части: сама галерея с картинками, а ниже комментарии от других пользователей. И чтоб на части с галереей помещалось, допустим, 20 изображений, а если их больше в альбоме, то появляются стрелки "вперёд-назад". И можно было бы листать, а комментарии и всё остальное не менялись бы. Не совсем представляю, каким образом это реализуется.
Идея с бинарной системой была, но я честно ответила то, что взбрело в голову первым.))
Допустим у него 30 комментариев, но изначально выводятся только 10. Тогда чтобы увидеть следующие, мы переходим на /gallery.php?picture=73&page=2
В итоге id изображения у нас остался тот же и выберется оно же, а страница поменялась и мы можем сделать смещение в выборке комментариев:
Где LIMIT 10 (смещение: это номер страницы минус один и умножить на количество комментариев на странице: (2-1)*10), 10 (количество комментариев на странице)
Соответственно если вам нужно листать изображения, а не комментарии - делаете смещение для них. Если нужно и то и то, то можно к примеру так: /gallery.php?id=3&gpage=4&cpage=2 - где gpage это страница галереи, а cpage это страница комментариев.