Ребят, подскажите как лучше осуществить следующее:
Надо что бы пользователь мог добавить статью ко мне на сайт через специальную форму.
При добавлении статей надо учитывать возможность форматировать текст(Жирный, курсив и т.д.), и что бы картинки можно было вставлять... Все статьи хранятся в БД, у поля с текстом статьи тип "text".
Значит так???
Так конечно лучше... хоть что то выводит... всего у меня 3 страницы получается(14 анкет)... на первой выводятся 4 анкеты, на второй выводятся 11 анкет... и на третей странице 11 анкет... где то всё равно ошибка...
Помогите...
Никак не могу понять в чём проблема...
Это скрипт по выводу 5 сообщений на каждую страницу из БД.
Ошибок никаких не выводит, а вывод всё равно не тот...
Вот листинг
В форме для каждого эллемента есть name - имя переменной которая будет передоваться... через action указываем какому файлу эти переменные будут переданы... Данные кто нажал на кнопку передаются через сессию или куки...
Вроде как то так...
Пытаюсь сделать авторизацию пользователя... Т.е. если пользователь авторизован и для него создана сессия со значением "$_SESSION['var']=1;", то выводится
Если нет, то выводится форма для авторизации. При заполнении формы пользователь проверяет введённые данные и если они верны, то создаётся сессия и в массив записываются его данные:
только как мне кажется поле comment типа varchar в данном случае не есть гуд. у вас либо лимит должен быть меньше, либо если комментарии будут большей длинны то лучше text или blob
Спасибо, учту...
SAD пишет:
можно вытянуть, но тебе ник и все остальное нужно в сессии хранить
$_SESSION['...']=$nick;
и вытягивать также
база вроде норм, сам справишься
Ага, с сессиями я вроде уже разобрался... насчёт базы порадовал... буду справляться... (Добавление)
Задумка, в общем, такая:
Это чё то типо ТОР10. например 10 самых богатых людей, 10 самых быстрых машин и т.д. Есть форма для заполнения(Её заполнять могут только зарегистрированные пользователи, значит нужно прослеживать сессию пользователя и данные о нике пользователя берутся из таблицы users в БД).
Пример(форма):
Автор: Billo
Заголовок: Самые большие города мира
Ответ 1: Москва
Ответ 2: Лондон
Ответ 3: Нью-Йорк
Ответ 4: Самара
Ответ 5: Париж
"Отправить"
Так вот... после заполнения формы и нажатия на кнопку "Отправить" Этот опрос добавляется в БД со множеством подобных опросов(В каждом опросе 5 вариантов ответа)
Незарегистрированный пользователь может смотреть только результаты.
Результат:
Самые большие города мира
Автор: Billo; 26.05.2009
1. Москва
2. Лондон
3. Нью-Йорк
4. Самара
5. Париж
Комментарии
А администратор сайта видит это так(R- редактировать X-удалить):
Админка:
Самые большие города мира R X
Автор: Billo; 26.05.2009
1. Москва R
2. Лондон R
3. Нью-Йорк R
4. Самара R
5. Париж R
Комментарии R X
Значит для админа сайта тоже надо проследить сессию и выдать результат опроса с возможностью его редактирования.
Подскажите пожалуйста как структурировать БД для этой задачи.
В частности меня интересует какие таблицы нужно создать, как их связать и какие поля там должны быть... И как лучше хранить данные с ответами в таблице(Ответ 1, Ответ 2...Ответ 5)? При условии, что их потом надо будет редактировать... и оптимизировать под поиск по сайту...
Я думаю что то таблица должна быть примерно такая:
create table answers (
id int(10) unsigned NOT NULL auto_increment,
nick varchar(50) NOT NULL,
datetime datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
head varchar(150),
answer1 varchar(50),
answer2 varchar(50),
answer3 varchar(50),
answer4 varchar(50),
answer5 varchar(50),
comment varchar(300)?
primary key (id)
);
id - счётчик, nick берётся из таблицы users, datetime - дата и время(вставляется автоматически при создании опроса), answer - это ответы, comment - это комментарии(они берутся из таблицы comments)...
Вот... значит нам нужны таблицы answers, users и comments... Ещё вопрос... как их связать?...И ещё вопрос... Как должна выглядеть таблица comments? (Добавление)
Я создам три таблицы...
Первая с вопросом и ответами...т.к. создатель опроса сам заполняет все 5 полей с ответами(все поля обязательны для заполнения).
create table answers (
id_ans int(10) unsigned NOT NULL auto_increment,
nick varchar(50) NOT NULL,
date date NOT NULL,
head varchar(150) NOT NULL,,
answer1 varchar(50) NOT NULL,,
answer2 varchar(50) NOT NULL,,
answer3 varchar(50) NOT NULL,,
answer4 varchar(50) NOT NULL,,
answer5 varchar(50) NOT NULL,,
primary key (id_ans)
);
Вторая таблица с комментариями... в этой таблице будут храниться комментарии ко всем опросам. Т.е. связываться таблицы будут через id_ans. При оставлении комментария будет присваиваться id_ans такой же как и в таблице answers. А при запросе комментариев к опросу будут выбираться все комментарии с одинаковым id_ans.
create table comments (
id_com int(10) unsigned NOT NULL auto_increment,
nick varchar(50) NOT NULL,
date date NOT NULL,
comment varchar(300) NOT NULL,
id_ans int(10),
primary key (id_com)
);
Как вам такой вариант???
И ещё вопрос... при авторизации пользователя для него создаётся сессия... и при создании опроса или комментария можно ли из этой сессии вытянуть его ник для полей nick в таблицах?
Третья таблица - это users... в ней будут храниться зарегистрированные пользователи... но это уже из другой оперы...