evgenijj, но ведь запросы в некоторых случаях обрабатываются и без косых кавычек.
TABLE И COLUMN - ключевые слова, использовать их в качестве имен таблиц и полей нельзя. Но если очень хочется -- то можно, только надо их заключать в кавычки, чтобы MySQL знал, что это имя поля, а не ключевое слово
s:949:"Пользователи китайского сегмента сети Интернет больше не смогут пользоваться зарубежными поисковыми системами. При попытке доступа к поисковикам Google или Yahoo! пользователей автоматически перенаправляют на страницу китайской поисковой системы Baidu. Помимо Yahoo! и Google китайцы остались и без поисковой системы Live Search от Microsoft. Никаких официальных заявлений ни со стороны китайских властей, ни от администрации Baidu в связи с произошедшим не поступало. Ряд наблюдателей уже успел назвать произошедшее очередным проявлением жесткой цензуры Сети, осуществляемой китайскими властями. Китай периодически блокирует блог-сервисы (и арестовывает блоггеров за излишне фривольные высказывания), а также приостанавливает доступ сограждан к ресурсам наподобие свободной энциклопедии Wikipedia. Ранее сообщалось, что властям Китая стал неугоден даже российский поисковик Yandex, доступ к которому из некоторых городов Китая был невозможен."
по информации функции serialize -- 949 символов. На самом деле длина строки
Цитата:
Пользователи китайского сегмента сети Интернет больше не смогут пользоваться зарубежными поисковыми системами. При попытке доступа к поисковикам Google или Yahoo! пользователей автоматически перенаправляют на страницу китайской поисковой системы Baidu. Помимо Yahoo! и Google китайцы остались и без поисковой системы Live Search от Microsoft. Никаких официальных заявлений ни со стороны китайских властей, ни от администрации Baidu в связи с произошедшим не поступало. Ряд наблюдателей уже успел назвать произошедшее очередным проявлением жесткой цензуры Сети, осуществляемой китайскими властями. Китай периодически блокирует блог-сервисы (и арестовывает блоггеров за излишне фривольные высказывания), а также приостанавливает доступ сограждан к ресурсам наподобие свободной энциклопедии Wikipedia. Ранее сообщалось, что властям Китая стал неугоден даже российский поисковик Yandex, доступ к которому из некоторых городов Китая был невозможен.
равна 943 (можешь проверить сам с помощью функции strlen). Другими словами, произошел сбой при сериализации и теперь строка не может быть корректно распакована в массив.
Я вообще не понял, что это за форма. Ладно, еще раз. При добавлении новой страницы сайта мы выдаем первую форму. Пусть этим у нас занимается функция add_page_first_form()
Какие поля содержит эта форма?
Обработчик этой формы -- функция add_page_first() добавляет в таблицу БД pages новую запись
INSERT INTO pages ( ... ) VALUES ( ... )
но оставляет поле settings пустым. Далле, поскольку мы уже знаем, какой модуль будет использован на этой странице (пусть, для определенности это будет articles) мы вызываем функцию add_page_second_form( $module ), которая выдаст пользователю вторую форму. Эта функция принимает в качестве параметра имя модуля.
Задача этой функции - выдать пользователю форму. Но для каждого модуля форма будет выглядеть по-разному. Например, для модуля articles надо предоставить пользователю возможность выбрать статью, которая будет показываться на этой странице
Когда пользователь заполнит вторую форму и нажмет кнопку "Отправить" мы уже сможем заполнить поле settings в таблице pages. Эту задачу будет решать функция add_page_second().
Сразу хочу предупредить -- это будет нелегкая задача. И для ее решения потребуется написать немало кода.
Можно и так. Одна функция решает две задачи -- сначала выдает пользователю форму, которую надо заполнить, а потом эта же функция добавляет новую статью.
А можно было написать две функции -- одна выдает форму get_add_article_form(), а другая добавляет статью add_article().
Snic пишет:
соотвественно если меняешь модуль то форма может меняться
в зависимости от модуля так? или как?
допустим я выбрал модуль "статьи" то при добавлении информации должны создаваться записи и в articles и в pages так?
Когда ты создаешь страницу (добавляешь запись в таблицу БД pages) ты должен заполнить две формы. Сначала пользователь заполняет следующие поля
title
description
keywords
и выбирает модуль
< select name='module">
< option value="articles">Статьи< /option>
< option value="news">Новости< /option>
< option value="forms">Формы< /option>
< /select>
Потом, мы выдаем ему для заполнения вторую форму. Здесь у него будет возможность выбрать статью для показа, если используется модуль articles или указать количество новостей для показа на одной странице, если используется модуль news и т.п.
Мы не можем решить задачу добавления новой страницы с помощью одной формы. Потому что мы не можем заранее знать, какой модуль выберет пользователь. А именно это определяет, какую вторую форму мы ему выдадим.
Конечно мы могли бы использовать AJAX, но я не уверен, что ты сейчас в этом разберешься.
Движок форума глючит. Вообще, насколько я могу судить, этот exbb - один большой глюк. Глючит везде - при показе главной страницы, при добавлении постов (по крайней мере в режиме модератора), при показе исходного кода php и т.п. Исправить я это не могу. А ARTY (автор портала PHP.SU), к сожалению, куда-то пропал.
Блин, ну и вопросы у тебя. Я сам с этой проблемой не сталкивался, но слышал о ней. Что-то с кодировками. Эта проблема описана здесь http://phpclub[dot]ru/faq/encodings/encodings4
К сожалению, этот раздел сейчас закрыт на профилактику, но можно посмотреть сохраненную копию на Yandex
Цитата:
Почему после субмита формы все данные приходят в виде И?
Такое происходит, если поля формы заполненны символами, отсутствующими в текущей кодировке страницы. Например, CHARSET у страницы указывает Windows 1252, а в форму вы вводите русские буквы. Браузер не может передать введенное правильно, потому что в указанной кодировке отсутствуют русские символы. Подобное кодирование помогает сохранить ваши данные в том виде, в каком вы их ввели. Символы зашифрованы в кодировке UNICODE. Про дешифрацию смотрите в одном из разделов данного FAQ.
АБВГ будут представлены АБВГ
Длина этой строки - 28 символов. Поэтому три русские буквы проходят проверку, а четыре - нет.
Через БД будет сложно, но интресно. Просто в код засунуть - это будет всего одна форма. И редактировать ручками. Программист разберется, а вот обычный контент-редактор сайта - вряд ли. Решай сам.
Знаешь, словами объяснять у тебя плохо получается. Терминология мягко говоря странная. Например, "...Разные функции, обрабатывающие разные действия пользователя..." Какие действия пользователя? Это PHP, а не JavaScript. Это в JavaScript та можешь реагировать на действия пользователя -- onclick, onchange, onmouseover и т.п.
Уровень твоих знаний пока не слишком высокий. Об этом вполне опреденно говорит конструкция
setcookie ("sendemail","okey") or die "Произошла ошибка";
Поэтому предлагаю сделать так: ты выкладываешь свой код. Только, пожалуйста, не надо сюда вываливать 1000 строк кода. Читать это никто не будет. Вполне достаточно 20-30 строчек кода. Не поленись, и напиши небольшой скриптик иллюстрирующий твою проблему. И мы с удовольствием тебе поможем.