Блин, я для кого исходники прикреплял?
$query = "SELECT title,description,keywords,orders,template,module,settings,startpage FROM pages WHERE id=".$id_page;
И где здесь поле id?
CREATE TABLE `pages` (
`id_page` mediumint(8) unsigned NOT NULL auto_increment,
`title` varchar(255) NOT NULL default '',
`description` tinytext NOT NULL,
`keywords` tinytext NOT NULL,
`orders` tinyint(4) NOT NULL default '0',
`template` varchar(32) NOT NULL default '1',
`module` varchar(32) NOT NULL default 'none',
`settings` varchar(255) NOT NULL,
`startpage` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`id_page`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
При возникновении проблем с функциями mysql (supplied argument is not a valid MySQL result resource) под строкой, где произошла ошибка, обязательно надо вывести на экран mysql_error() и сам запрос - для визуального контроля и копирования на форум.
Неужели так трудно было вывести запрос на экран, скопировать его и выполнить через phpmyadmin?
mysql_query("SELECT title FROM sections WHERE (title = '$title') LIMIT 1") or die("<b>Раздел с таким названием уже существует !!!</b>");
НЕПРАВИЛЬНО!!! Функция die будет выполнена только если произошла ошибка при выполнении запроса. Т.к. функцию mysql_real_escape_string() ты не используешь, то это весьма вероятно. Например
$_POST['title'] = "Evgenijj's partition";
Правильно так
Еще раз - что за ошибку выдает PHP? Если ничего не выдает - выставляем в php.ini
display_errors = On
error_reporting = E_ALL
Зачем используется функция htmlspecialchars()? Ее имеет смысл использовать перед выводом в браузер. Да и используют ее по-другому
$title = htmlspecialchars( $title )
Тут более уместна функция mysql_real_escape_string()
Все гуд.
а при редактировании:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:homebzzzwwwadminpages_admin.php
Не знаю. У меня работает. Сейчас посмотрел -- есть у меня там пара мелких ошибок, например в функции get_edit_page_form()
А вообще, учись отлаживать ошибки. И если хочешь спросить что-то на форуме, во-первых, приводишь исходный код скрипта -- мы тут не телепаты. Во-вторых, сообщение об ошибке. В какой строке и т.п.
...только вопрос зачем точки до и после .$i. и как такое может быть: $i = $i + 1 если допустим $i=1, то 1=2 этого ведь не может быть?! Где можно прочитать про это, если не трудно дайте ссылку...
P.S. Вообще, такие вопросы "и как такое может быть: $i = $i + 1 если допустим $i=1, то 1=2 этого ведь не может быть?!" опасны
Цитата:
У многоножки одна сотня ног. Кролик увидел её и не мог поверить. Он сказал:
— Тётушка, я очень смущён, я не могу себе представить, как ты управляешься. Если бы у меня было сто ног, я никогда не смог бы ходить. Я бы совершенно запутался.
Многоножка никогда не задумывалась над этим, вот почему она не путалась. Но теперь она сказала:
— Я никогда не думала об этом, я подумаю.
Она стала размышлять, впервые осознала себя. Она посмотрела на ноги и запуталась. Она упала! Она заявила кролику:
— Никогда не задавай таких вопросов! Я всегда ходила и никогда не было никаких проблем. А ты запутал меня. Теперь я никогда не смогу ходить правильно. Эта проблема будет преследовать меня. Какая первая? Какая вторая? И целая сотня ног!
EuGen, естественно нет накакого mysite.ru - я все замаскировал, честно говоря нехочу светить сайтом. У меня сейчас есть рабочий код БЕЗ проверок, он доходит на почту.
Дело не в mysite, а в том, что ты передаешь функции неправильные значения. Посмотри описание функции http://php.su/functions/?mail
Там и пример есть
mail("joecool@example.com", "My Subject", "Line 1nLine 2nLine 3");
и сравни как у тебя
mail("To: mail@mysite.ru", "Subject: Новый заказ с сайта!", "тут ваше сообщение", "тут ваши заголовки");
wmz38 пишет:
а теперь после включения доп. фишек в скрипт не проходит
Ну здесь я использовал некий абстрактный набор функций для работы с БД
db_query()
db_fetch_array()
db_result()
В зависимости от того, с какой БД ты будешь работать, надо их заменить на реальные функции. Например, для MySQL
mysql_query()
mysql_fetch_array()
mysql_result()
а не проще ли если это всё универсальное запихать в одну таблицу к примеру контент?
Так мы и запихнули все в одну таблицу -- articles. Если тебе не нравится название таблицы articles (и модуля articles), назови content. Суть от этого не меняется.
Snic пишет:
ты специально в том коде не все написал?
то что в коде нехватает
if(!eregi("^[-а-яa-z0-9_.]+$",$title))die("Название имеет неверный формат!");
Здесь имя файла допускает русские и латинские буквы, дефис, точку и символ подчеркивания. Я убрал из допустимых символов пробел. И советую исключить русские буквы