|
|
|
| Здравствуйте, уважаемые программисты!
Я конечно начинающий, и поэтому хочу Вашего совета.
Хочу сделать мини социальный сеть.
Теперь необходимо, чтобы пользователи могли добавить фотографии в свой Аккаунт.
Писать скрипт по добавлению фотографии я смогу, но где хранить путь к фото. если в базе, то каким образом? какое должно быть тип у поля? Подскажи пожалуйста, или еще что-то... | |
|
|
|
|
|
|
|
для: uvajs
(13.06.2011 в 11:54)
| | >но где хранить путь к фото. если в базе, то каким образом? какое должно быть тип у поля?
Да, лучше всего в базе данных, поле должно быть одно текстовое, а лучше два поля - одно для хранения имени файла-изображения, а второе - для относительного пути (оно в последствии может поменяться и будет удобно производить замену одни запросом к таблице).
PS Следует также позаботиться о том, чтобы имена не содержали русских символов (их следует преобразовывать в транслит) и не перезатирали друг друга - в имена файлов следует встраивать идентификатор пользователя и время добавления в формате UNIXSTAMP. | |
|
|
|
|
|
|
|
для: cheops
(13.06.2011 в 12:20)
| | Когда я пишу запрос INSERT INTO к базе таким образом:
<?
mysql_query ("INSERT INTO users (img) VALUES('$name') WHERE login='$login'");
?>
|
в поле img не добавляется путь фото. Подскажите пожалуйста, как правильно его писать?
$name = хранится путь к фото.
img = поле в базе. | |
|
|
|
|
|
|
|
для: uvajs
(13.06.2011 в 19:56)
| | В INSERT-запросах не нужно указывать конструкцию WHERE
<?php
mysql_query ("INSERT INTO users (img) VALUES('$name')");
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(13.06.2011 в 20:53)
| | А к какому пользователю добавется картинка, если их (пользователей) скажем 100?
Тут наверно лучше UPDATE использовать
<?
mysql_query ("UPDATE users set img ='$name' WHERE login='$login'");
?>
|
| |
|
|
|
|
|
|
|
для: Добрый кот
(13.06.2011 в 21:26)
| | >А к какому пользователю добавется картинка, если их (пользователей) скажем 100?
Если человек хочет добавить свое фото, то мы знаем, что он точно зарегистрирован.
а переменная $login я просто присвоил из $_SESSION['login']; чтобы обновилось соответствующее поле.
Разве UPDATE не удалить существующее фото? т.е. не перепишет путь новой фотки удаляя старый? | |
|
|
|
|
|
|
|
для: uvajs
(13.06.2011 в 22:23)
| | >Если человек хочет добавить свое фото, то мы знаем, что он точно зарегистрирован.
Все равно не ясен один момент. Если скажем пользователь зареген, авторизован и добавляет фотку идет мускул запрос. если взять запрос типа
mysql_query ("INSERT INTO users (img) VALUES('$name')");
| я не пойму к какому пользователю добавится сия картинка. Ведь надо указать либо id либо login пользователя, чтобы картинка добавлялась именно ему
><?
>mysql_query ("INSERT INTO users (img) VALUES('$name') WHERE login='$login'");
>?>
>а переменная $login я просто присвоил из $_SESSION['login']; чтобы обновилось соответствующее поле.
тут у Вас WHERE не обновляет поле login.
>Разве UPDATE не удалить существующее фото?
Да, UPDATE заменяет (обновляет) значение поля.
>т.е. не перепишет путь новой фотки удаляя старый?
Тут вообще не понятно, поле у Вас разве не пустое? | |
|
|
|
|
|
|
|
для: Добрый кот
(14.06.2011 в 00:00)
| | Вот к примеру аккаунт в одноклассниках:
http://s11.radikal.ru/i183/1106/60/27cf57af0db8.jpg
Там можно добавлять фотографии.
Я имею в виду чтобы пользователь смог добавлять в свой аккаунт свои фотографии, а не аватар.
Допустим вчера добавил 2 фотографии, а сегодня еще одну хочет.
Так где и как хранить их пути? | |
|
|
|
|
|
|
|
для: uvajs
(14.06.2011 в 12:12)
| | Мой вопрос не потянет что ли? уж не верится что не знают здешние программисты! | |
|
|
|
|
|
|
|
для: uvajs
(14.06.2011 в 12:12)
| | Не понятно, что вызывает сложности. Обычно под такие задачи выделяют отдельную таблицу, где хранят пути к фотографиям пользователей: одна запись - одна фотография. В таблице предусматривается поле, позволяющее различать фотографии разных пользователей. | |
|
|
|
|
|
|
|
для: uvajs
(14.06.2011 в 12:12)
| | Тогда надо как пишет cheops, добавлять фотографии в отдельную таблицу.
Можно к примеру создать таблицу с двумя полями: в одном храните путь к картинке, в другом-ид или логин пользователя добавившего картинку. | |
|
|
|