Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не могу найти ошибку в блоке Статей
 
 автор: Dizels   (23.04.2006 в 15:01)   письмо автору
 
 

Делаю все по книге "PHP 5 практика создания web-сайтов"

Вот, прикрепляю 3 файла, которые участвуют в обработке и выдают ошибку, а почему - мне не понятно, исходя из прошлых ошибок - возможно я просто где-то опечатался, но все проверил - не нашел, вообщем, помогите плиз.

Теперь сама суть проблемы:

Когда выбираю конкретную статью и захожу в нее - появляется все, что написано в файле art.php
потом, после выбора "Заголовок" - страница должна переслать данные файлу choose.php, а тот уже в свою очередь должен отобразить addtitlform.php . Но не отражает, а говорит: "Статья не выбрана". Т.е. я сделал вывод, что проблема в передачи данных, поэтому прикрепляю все 3 файла.
P.S. если в браузер ввести строку

http://localhost/LifeGame2/admin/stati/addtitlform.php?id_article=2

То все работает как надо.

   
 
 автор: Unkind™   (23.04.2006 в 22:16)   письмо автору
 
   для: Dizels   (23.04.2006 в 15:01)
 

Я че-то не понял...Если файл choose.php что-то вроде конвертера данных из массива $_POST в данные $_GET, то почему в файле choose.php перекидывает сюдя по коду на index.php:

<?php

$action 
"index.php";
switch (
$_POST['typepar'])
    
    {
    case 
1// Заголовок
      
$action="addtitlform.php";
      break;
    case 
2// Абзац
      
$action="addparform.php";
      break;
    case 
3// Ссылка
      
$action="addanchform.php";
      break;
    case 
4// Новая статья
      
$action="addanchartform.php";
      break;
    case 
5// Таблица из csv-файла
      
$action="addtableform.php";
      break;
    }
echo 
"<html><head>
    <meta http-equiv='Refresh' content='0; url=
$action?
            id_article="
.$_POST['id_article']."&
            pos="
.$_POST['pos']."&
            id_page="
.$_POST['id_page']."'>
    </head></html>"
;

?>

А вы сказали, что "страница должна переслать данные файлу choose.php, а тот уже в свою очередь должен отобразить addtitlform.php"...

   
 
 автор: Dizels   (24.04.2006 в 17:29)   письмо автору
 
   для: Unkind™   (23.04.2006 в 22:16)
 

Вопрос действительно интересный :) Как я понимал раньше - это он добавляет к index все, что надо конвертировать(вернее не в индекс, а все значения передаваемые), но вот сейчас окончательно запутался, разьясните и этот вопрос :)

   
 
 автор: Dizels   (24.04.2006 в 23:11)   письмо автору
 
   для: Dizels   (24.04.2006 в 17:29)
 

Люди, откликнитесь! Мне очень нужна Ваша помощь, так как я застопорился, а время идет :(

   
 
 автор: cheops   (24.04.2006 в 23:40)   письмо автору
 
   для: Dizels   (24.04.2006 в 17:29)
 

Запутались в чём - не понятен вопрос?

   
 
 автор: Dizels   (26.04.2006 в 10:42)   письмо автору
 
   для: cheops   (24.04.2006 в 23:40)
 

Запутался - не могу понять, почему не работает, все делал как в книжке, да и сам логически рассуждал, вроде все правильно, а не работает :(

   
 
 автор: Dizels   (26.04.2006 в 22:29)   письмо автору
 
   для: Dizels   (26.04.2006 в 10:42)
 

Прошу прощение, за надоедливость, но вопрос все еще в силе - где ошибка?

   
 
 автор: cheops   (26.04.2006 в 22:39)   письмо автору
 
   для: Dizels   (23.04.2006 в 15:01)
 

Замените блок
<?php
if(!isset($_GET['id_article']))
{

 echo 
"Статья не выбрана";
 exit();

}
?>

на
<?php
if(!isset($_GET['id_article'])) $_GET['id_article'] = 1;
?>

Тогда, если статья не будет выбрана, по умолчанию будет выбираться первая статья.

   
 
 автор: Dizels   (28.04.2006 в 23:40)   письмо автору
 
   для: cheops   (26.04.2006 в 22:39)
 

поменял, как Вы посоветовали, теперь другая ошибка появляется - когда захожу в какую-нибудь конкретную статью, то вижу следущее:

Заголовок и т.д.

Warning: mysql_query(): Access denied for user 'ODBC'@'localhost' (using password: NO) in z:\home\localhost\www\lifegame2\admin\stati\art.php on line 57

Warning: mysql_query(): A link to the server could not be established in z:\home\localhost\www\lifegame2\admin\stati\art.php on line 57

Заголовок и т.д.

теперь собственно строчка 56 и т.д.:

$par = mysql_query("SELECT * FROM paragraphes
                WHERE id_article=$id_article AND pos=$pos");
    if($par &&mysql_num_rows($par)>0)


В чем теперь проблема? в первой ошибке я так понимаю проблемы соединения с базой данных, но вот из-за чего они возникли? А насчет второй ошибки вообще не понял :(

   
 
 автор: cheops   (29.04.2006 в 10:11)   письмо автору
 
   для: Dizels   (28.04.2006 в 23:40)
 

А вы конфигурационный файл config.php не меняли? Если меняли как он сейчас выглядит?

   
 
 автор: Dizels   (29.04.2006 в 14:27)   письмо автору
 
   для: cheops   (29.04.2006 в 10:11)
 

нет, абсолютно ничего не менял, все делаю по книге.

   
 
 автор: cheops   (29.04.2006 в 23:53)   письмо автору
 
   для: Dizels   (29.04.2006 в 14:27)
 

А переменная $dbuser в конфигурационном файле config.php какое имеет значение?

   
 
 автор: Dizels   (01.05.2006 в 01:05)   письмо автору
 
   для: cheops   (29.04.2006 в 23:53)
 

$dbuser = "root";

   
 
 автор: cheops   (01.05.2006 в 11:53)   письмо автору
 
   для: Dizels   (01.05.2006 в 01:05)
 

Хм... такое ощущение, что где перезатирается эта переменная, так как MySQL сообщает, что вы соединяетесь из под анонимного пользователя
$dbuser = "";

   
 
 автор: Dizels   (01.05.2006 в 19:54)   письмо автору
 
   для: cheops   (01.05.2006 в 11:53)
 

Ну не знаю, печатал я все как в книге написано, может кинуть все файлы? Или напишите какие надо, а то дальнейшее чтение книги становится бессмысленным, а покупал я ее можно сказать именно из-за этого раздела.

   
 
 автор: cheops   (01.05.2006 в 22:13)   письмо автору
 
   для: Dizels   (01.05.2006 в 19:54)
 

Вообще весь код идёт на компакт диске, поставляемом вместе с книгой - он запускатеся у вас?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования