Вопрос № 122413: здравствуйте
дорогие мои эксперты, помогите пожалуйста разобраться и понять свою ошибку
только начала изучать php/mysql и возникла такая проблема
из одной страницы на другую идет ссылка типа
book.php?aid=автор книги&bid=название
...Вопрос № 122448: Доброго времени суток!
Хочу поставить форум себе на сайт http://www.mega-stars.ru
Какой форум вы мне посоветуете?
PS: Прошу сразу кинуть ссылочку на архив с форумом....Вопрос № 122489: дорогие эксперты, подскажите пожалуйста
есть две страницы сайта
какой надо сделать mysql запрос, чтобы с первой на вторую страницу вела ссылка типа book.php?aid=автор&bid=название книги...Вопрос № 122507: Добрый день уважаемые эксперты. У меня возникла небольшая проблема с регулярными выражениями. Ранее я задавал вопрос о вытягивании текста между двумя тегами <td>text</td>(см. приложение).
Пытался переделать так чтоб помимо всего текст...Вопрос № 122511: У меня есть форма /admin/cat/add.php добавления нового пункта меню для сайта. Но когда я жму на кнопку добавить apache пишет следующее:
You don't have permission to access /admin/cat/< on this server.
И предлагает какие-то глупости, которы...
Вопрос № 122.413
здравствуйте
дорогие мои эксперты, помогите пожалуйста разобраться и понять свою ошибку
только начала изучать php/mysql и возникла такая проблема
из одной страницы на другую идет ссылка типа
book.php?aid=автор книги&bid=название
и если названия у двух книг совпадают то попадаю на страницу только первой книги, т.е скорее всего aid=автор в $_GET не читаеться
чувствую, что ошибка в mysql запросе (в придложении), но не могу понять где
помогите, пжалуста...
Приложение:
Отправлен: 09.02.2008, 20:30
Вопрос задала: Fire-head (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Товарищ Бородин
Здравствуйте, Fire-head!
В SQL-запросе действительно ошибка - по-моему, надо заключить "%s" в одинарные кавычки. Просто если их нет, и мы подставляем вместо аргумента строку, MYSQL будет трактовать ее как оператор, а не как строку. Чтобы строка была строкой, она должна содержаться в кавычках. Тогда и ошибки в запросе не будет. И вообще, раз Вы только начали изучать PHP, возьмите себе за правило - составляя запросы к БД, заключаем строки(и любые значения полей, по которым проводится сравнение) в одинарные кавычки - ' ', названия
баз данных, таблиц и полей - в ``(апострофы). Это будет гарантировать Вас от труднозамечаемых ошибок, связанных с отсутствием кавычек, в SQL-синтаксисе.
Ну и кроме того, распечатайте сообщение, выдаваемое функцией mysql_error. Если ошибка в запросе, будет выдано сообщение с достаточно точным(хотя и не всегда понятным новичку) адресом ошибки.
Кроме того, вообще непонятно, какого рода у Вас ошибка. На будущее - чтобы проблема была понятна, сообщайте больше полезной информации, например, пишет ли что-нибудь интерпретатор: warning, notice, parse error, fatal error или что-нибудь в этом роде. Тогда, по крайней мере, становится яснее, где искать.
С уважением, Товарищ Бородин
--------- Ничто не сближает людей так, как совместное преступление.
Ответ отправил: Товарищ Бородин (статус: Практикант)
Ответ отправлен: 09.02.2008, 20:48 Оценка за ответ: 4 Комментарий оценки: спасибо за желание помочь, но наверное_я_неправильно_сформулировала_вопрос, попробую еще раз
Отвечает: PVS@Lviv
Здравствуйте, Fire-head!
Так у Вас и нету нигде обработки $_GET['aid']. Предлагаю вариант:
$criteria=array();
if(isset($_GET['bid']))$criteria[]="(bid=".GetSQLValueString($_GET['bid'], "text").")";
if(isset($_GET['aid']))$criteria[]="(aid=".GetSQLValueString($_GET['aid'], "text").")";
$query_booka="select * from books where ".implode($criteria,' and ');
теперь будет искать если задан хотя бы один параметр.
Ответ отправил: PVS@Lviv (статус: Специалист)
Ответ отправлен: 11.02.2008, 10:26 Оценка за ответ: 5 Комментарий оценки: ты гений, это именно то, что я искала!!!!!!!!!!!!
Вопрос № 122.448
Доброго времени суток!
Хочу поставить форум себе на сайт http://www.mega-stars.ru
Какой форум вы мне посоветуете?
PS: Прошу сразу кинуть ссылочку на архив с форумом.
Также смотрим форумы вот на этой странице. Уверен, Вы найдете подходящий форум.
С уважением, Товарищ Бородин
--------- Ничто не сближает людей так, как совместное преступление.
Ответ отправил: Товарищ Бородин (статус: Практикант)
Ответ отправлен: 10.02.2008, 09:55 Оценка за ответ: 5 Комментарий оценки: Очень хороший ответ!
Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Викторчик Александр Максимович! Советую установить phpBB3. Это последняя стабильная версия форума. В ней исправлены все известные "дыры" предыдущих версий и добавлено много новых возможностей. Также изменено оформление, благодаря чему форум стал намного красивее (на мой взгляд). Скачать можно здесь: phpBB3 Языковые пакеты
Также форум, как и его предшественник phpBB2, расширяется
огромным количеством модов, которые можно загрузить отсюда: Modifications
Ответ отправил: Николай Владимирович / Н.В. (статус: Профессионал) Россия, Москва WWW:nvsoft.org ICQ: 420720 ---- Ответ отправлен: 10.02.2008, 16:17
Вопрос № 122.489
дорогие эксперты, подскажите пожалуйста
есть две страницы сайта
какой надо сделать mysql запрос, чтобы с первой на вторую страницу вела ссылка типа book.php?aid=автор&bid=название книги
Отправлен: 10.02.2008, 13:49
Вопрос задала: Fire-head (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Нужно сделать обычный запрос SELECT * FROM <таблица>, можно и с параметрами. А уже обрабатывая этот запрос на php вы формируете подобные ссылки, используя поля записей таблицы.
--------- Жить хорошо, а хорошо жить еще лучше!
Ответ отправил: Емельянов Данил Юрьевич (статус: 5-ый класс)
Ответ отправлен: 10.02.2008, 14:23 Оценка за ответ: 4
Вопрос № 122.507
Добрый день уважаемые эксперты. У меня возникла небольшая проблема с регулярными выражениями. Ранее я задавал вопрос о вытягивании текста между двумя тегами <td>text</td>(см. приложение).
Пытался переделать так чтоб помимо всего текст в этом файле который не находится между тегами <td>text</td>(их достаточно много), игнорировался текст описывающий параметры ячеек(пример:<td width="300px"align="cent... и т.д>text</td>).
Идея у меня была такова:
1. Считать содержимое достаточно большого файла.
2. Удалить все кроме ячеек <td>text</td> и <td с параметрами которые заранее не известны>text</td>
3. Стереть параметры у <td с параметрами>text</td>. чтоб получились просто <td>text</td>.
4. Убрать теги <td>и</td>и оставить только текст.
5. Сохронить в файл текст(ранее заключенный между тегами<td></td>), каждый в новую строку.
Может быть кто-то реализовал подобный парсер или может помочь.
Заранее благодарен за помощ.
Отвечает: Миленин Александр
Здравствуйте, Tohachorniy!
Такое решение, тоже возможно, но так-же можно составить следующее регулярное выражение:
preg_match_all("/<td.*?>(.*?)</td>/i",$html,$m);
которое будет получать содержимое <td></td> вне зависимости от его параметров.
Ответ отправил: Миленин Александр (статус: 10-ый класс)
Ответ отправлен: 10.02.2008, 17:07 Оценка за ответ: 5 Комментарий оценки: Спасиба большое
Вопрос № 122.511
У меня есть форма /admin/cat/add.php добавления нового пункта меню для сайта. Но когда я жму на кнопку добавить apache пишет следующее:
You don't have permission to access /admin/cat/< on this server.
И предлагает какие-то глупости, которые не помогают (Options +ExecCGI)
я на всякий случай вообще убрал пароль с директории admin - но сервер пишет тоже самое.
то есть когда я просто запускаю admin/index.php или admin/cat/add.php в браузере - то все ведет себя нормально, но когда я жму на кнопку формы - выдает ошибку You don't have permission to access /admin/cat/< on this server.
а в строке браузера пишет путь http://stendart.ru/admin/cat/%3C%20?%20$PHP_SELF;%20?%3E
Кто-нибудь знает в чем дело и что это за бяка?
Приложение:
Отправлен: 10.02.2008, 16:52
Вопрос задал: Schel4ok (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Schel4ok!
Вы передаете запрос на несуществующую страницу, поэтому сервер пишет "You don't have permission to access /admin/cat/< on this server."
Замените строку <form action="< ? $PHP_SELF; ?>" method="post" class="form_">
на <form action="add.php" method="post" class="form_">
Должно заработать.
И еще одно замечание на будущее: нежелательно использовать $PHP_SELF и подобные переменные, поскольку на многих серверах отключено register_global.
Удачи!
Ответ отправил: Николай Владимирович / Н.В. (статус: Профессионал) Россия, Москва WWW:nvsoft.org ICQ: 420720 ---- Ответ отправлен: 10.02.2008, 17:02 Оценка за ответ: 4 Комментарий оценки: я уже разобрался. дело было в то, что я забыл поставить знак присваивания =$PHP_SELF;?> и все заработало!!!
все равно спасибо за совет по поводу register_global
а на каких конкретно серверах этот параметр
отключен? Например у net.ru и host-ing.ru?
Отвечает: M@gi$†e®
Здравствуйте, Schel4ok!
А это не бяка, а лишний пробел вот в этой строке:
<form action="< ? $PHP_SELF; ?>" method="post" class="form_">
Нужно вот так:
<form action="<? $PHP_SELF; ?>" method="post" class="form_">
Приложение:
--------- Aquila non Capta Muscas
Ответ отправил: M@gi$†e® (статус: 8-ой класс)
Ответ отправлен: 12.02.2008, 00:29