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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Помогите найти ошибку в коде (Notice)?

Сообщения:  [1-10]   [11-11] 

 
 автор: xpom   (16.09.2006 в 15:43)   письмо автору
 
   для: cheops   (16.09.2006 в 13:46)
 

Вот это исправил, работает список появился, а переменная d ниже скрипта не выводится, где это может быть ошибка? Вот ниже код вовода ссылок в соответствии с d:

<?php
  
if($_GET['d'] == 1)
  {
    
// Ссылки раздела 1
    
echo "<a href=cat.php?d=".htmlspecialchars($_GET['d'])."&n=1>Раздел 1.1</a><br>";
    echo 
"<a href=cat.php?d=".htmlspecialchars($_GET['d'])."&n=2>Раздел 1.2</a><br>";
    echo 
"<a href=cat.php?d=".htmlspecialchars($_GET['d'])."&n=3>Раздел 1.3</a><br>";
  }
?>

   
 
 автор: cheops   (16.09.2006 в 13:46)   письмо автору
 
   для: xpom   (15.09.2006 в 22:27)
 

Да это означает индекс пустой... вообще говоря у вас не совпадают имена стлбцов в таблице и в PHP-скрипте... Скрипт минимально следует поправить следующим образом
<?php  
  
$db 
mysql_connect($dbhost$dbuser$dbpass); 
  
mysql_selectdb($dbname$db); 

 
$res mysql_query("SELECT * FROM Punkt",$db);  
  if(!
$res) exit("Ошибка в синтаксисе запроса");  
  if(
mysql_num_rows($res))  
  {  
     echo 
"<select type=text name='d'> ";  
     while(
$punkt mysql_fetch_array($res))  
     {  
        if(
$_GET['d'] == $punkt['PID']) $selected "selected";  
        else 
$selected "";  
        echo 
"<option  value=$punkt[PID] $selected>$punkt[PunktName]</option>";  
     }  
     echo 
"</select> ";  
  }  
?> 

   
 
 автор: xpom   (16.09.2006 в 10:46)   письмо автору
 
   для: coerbi   (15.09.2006 в 22:55)
 

Исправление не помогает?

   
 
 автор: coerbi   (15.09.2006 в 22:55)   письмо автору
 
   для: xpom   (15.09.2006 в 22:27)
 

А где у тебя в табдице поле id исправь на pid в скрипте

   
 
 автор: xpom   (15.09.2006 в 22:27)   письмо автору
 
   для: cheops   (15.09.2006 в 21:31)
 

Вывел с помьщью этого кода содержимое массива $punkt , никаких изменений не произошло, все так как и было? Это значит что массив не строится?

   
 
 автор: cheops   (15.09.2006 в 21:31)   письмо автору
 
   для: xpom   (15.09.2006 в 16:35)
 

В цикле выведите содрежимое массива $punkt - в нём чего-нибудь есть?
<?php
  
echo "<pre>";
  
print_r($punkt);
  echo 
"</pre>";
?>

   
 
 автор: xpom   (15.09.2006 в 16:35)   письмо автору
 
   для: cheops   (14.09.2006 в 20:35)
 

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

   
 
 автор: cheops   (14.09.2006 в 20:35)   письмо автору
 
   для: xpom   (14.09.2006 в 17:55)
 

Notice является своеобразным советом и выводится, когда выставлена максимальная чувствительность PHP к ошибкам - её следует понизить, как это сделано на всех хостингах, иначе они не дадут работать. Для этого, следует выставить соответствующее значение для директивы error_reporting http://www.softtime.ru/info/articlephp.php?id_article=23, в конфигурационном файле php.ini
error_reporting = E_ALL & ~E_NOTICE

Так же можно изменить уровень обработки ошибок локально, для этого в начало скрипта следует поместить функцию
<?php 
Error_Reporting
(E_ALL & ~E_NOTICE); 
?>

В качестве параметра, которой передать соответствующий уровень обработки ошибок.

   
 
 автор: xpom   (14.09.2006 в 17:55)   письмо автору
 
   для: cheops   (13.09.2006 в 22:28)
 

Появляется пучтой выпадающий список с кнопкой перейти и выводится вот это сообщение:
PHP Notice: Undefined index: d in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 26 PHP Notice: Use of undefined constant id - assumed 'id' in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 26 PHP Notice: Undefined index: id in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 26 PHP Notice: Undefined index: id in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 28 PHP Notice: Undefined index: name in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 28 PHP Notice: Undefined index: d in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 26 PHP Notice: Use of undefined constant id - assumed 'id' in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 26 PHP Notice: Undefined index: id in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 26 PHP Notice: Undefined index: id in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 28 PHP Notice: Undefined index: name in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 28 PHP Notice: Undefined index: d in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 36 PHP Notice: Undefined index: d in C:\Apache2.2\htdocs\cat\Untitled-5.php on line 43
26-я строка в коде у меня вот эта: if($_GET['d'] == $punkt[id]) $selected = "selected"; наверное это в ней неполадки?

   
 
 автор: cheops   (13.09.2006 в 22:28)   письмо автору
 
   для: xpom   (13.09.2006 в 22:14)
 

А что не так? В чём заключается ошибка?

   

Сообщения:  [1-10]   [11-11] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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