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

Форум PHP

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

 

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

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

тема: Notice - помогите с ошибкой

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

 
 автор: 70-й_регион   (22.08.2005 в 23:12)   письмо автору
 
   для: Евгений Петров   (22.08.2005 в 22:52)
 

Я эту дерикторию уже давно создал.
Это не помогло.
Осталась только вторая ошибка

Warning: read(): supplied argument is not a valid Directory resource in z:\home\localhost\www\test\php\index.php on line 10

Кстати примеры взяты из учебника с этого сайта
http://www.softtime.ru/info/bookphp.php

   
 
 автор: Евгений Петров   (22.08.2005 в 22:52)   письмо автору
 
   для: 70-й_регион   (22.08.2005 в 22:18)
 

А я понял! Создай в том каталоге где лежит этот скрипт папку records и все будет работать.

   
 
 автор: 70-й_регион   (22.08.2005 в 22:18)   письмо автору
 
   для: Евгений Петров   (22.08.2005 в 22:03)
 

не непомогло ошибки остались обе.

   
 
 автор: Евгений Петров   (22.08.2005 в 22:03)   письмо автору
 
   для: 70-й_регион   (22.08.2005 в 21:45)
 

Первая ошибка в строке: $dir_rec = dir("records"); говорит что не может найти такой каталог. Попробуй написать
$dir_rec = dir("/records");

Вторая ошибка в while($entry = $dir_rec->read()) я не особо понял, но попробуй написать так
while($entry = $dir_rec->read($dir_rec))

   
 
 автор: 70-й_регион   (22.08.2005 в 21:45)   письмо автору
 
   для: Киналь   (22.08.2005 в 21:39)
 

Евгений Петров
В коде который вы дали две ошибки

1)Warning: dir(records): failed to open dir: Invalid argument in z:\home\localhost\www\test\php\index.php on line 8

2)Fatal error: Call to a member function on a non-object in z:\home\localhost\www\test\php\index.php on line 10

Вот ваш код


<HTML> 
  <HEAD> 
  <TITLE>Гостевая книга</TITLE> 
  </HEAD> 
  <BODY> 
  <? 
  Error_Reporting
(E_ALL & ~E_NOTICE); 
  
$dir_rec dir("records"); 
  
$i 0
  while(
$entry $dir_rec->read()) 
  { 
    if (
substr($entry,0,3)=="rec"
    { 
      
$names[$i]=substr($entry,4); 
      
$i++; 
    } 
  } 
  
$dir_rec->close(); // закрываем директорию 
  
@rsort($names); // сортируем файлы 
  /* определяем очередность сообщений и выводим их */ 
  
$count $i
  
$count1 $count
  if (empty(
$start)) 
  { 
    
$start 0
  } 
  
$start intval($start); 
  if (
$start 0
  { 
    
$start 0
  } 
  print 
"<center>"
  if (
$count $start 10$count $start 10
  if (
$start != 0
  { 
    print 
"<A href=index.php?start=".($start 10).">Предыдущие</A>"
  } 
  print 
"<a href=addrec.php>Добавить запись</A>"
  if (
$count1 $start 10
  { 
    print 
"<A href=index.php?start=".($start 10).">Следующие</A> \n"
  } 
  print 
"</center><br>"
  
/* выводим все сообщения в цикле */ 
  
for ($i $start$i $count$i++) 
  { 
    
$entry $names[$i]; 
    
$data file("records/rec.".$entry); 
    
$date $entry
    
$name trim($data[0]); 
    
$city trim($data[1]); 
    
$email trim($data[2]); 
    
$url trim($data[3]); 
    
$msg trim($data[4]); 
    
/* поле, в которое администратор может добавить ответ */ 
    
$answer trim($data[5]); 
    print 
"<table border=0 cellspacing=0 cellpadding=2 width=100%> 
    <tr bgcolor=#F0F0F0><td>&nbsр;"

    print 
"<b>$name</b>&nbsр;"
    if (!empty(
$city)) print "$city&nbsр"
    if (!empty(
$email)) print "<a href=mailto:$email><i>$email</i></A>\n"
    if (!empty(
$url)) print "<a href=$url>$url</a>"
    print 
"</td><td align=right>".date("<b>d-m-Y</b> H - i, $date").
    </td> 
    </tr>n 
    <tr> 
    <td colspan=2>n"

    print 
"<P>".$msg."</P>n"
    if (!empty(
$answer)) // если администратор что-то ответил 
    

      print 
"<P><font color=#1E90FF>admin:&nbsр$answer</font></P>\n"
    }     
    print 
"</td></tr></table>\n<br><br>\n"
  } 
  print 
"<center>"
  if (
$start != 0
  { 
    print 
"<A href=index.php?start=".($start 10).">Предыдущие</A>"
  } 
  print 
"<a href=addrec.php>Добавить запись</A>"
  if (
$count1 $start 10
  { 
    print 
"<A href=index.php?start=".($start 10).">Следующие</A> \n"
  } 
  print 
"</center>"
  
?> 
  </BODY> 
  </HTML> 

Помогите исправить

   
 
 автор: 70-й_регион   (22.08.2005 в 21:42)   письмо автору
 
   для: Евгений Петров   (22.08.2005 в 20:47)
 

Евгений Петров
В коде который вы дали две ошибки

1)Warning: dir(records): failed to open dir: Invalid argument in z:\home\localhost\www\test\php\index.php on line 8

2)Fatal error: Call to a member function on a non-object in z:\home\localhost\www\test\php\index.php on line 10

Вот ваш код

<HTML> 
  <HEAD> 
  <TITLE>Гостевая книга</TITLE> 
  </HEAD> 
  <BODY> 
  <? 
  Error_Reporting
(E_ALL & ~E_NOTICE); 
  
$dir_rec dir("records"); 
  
$i 0
  while(
$entry $dir_rec->read()) 
  { 
    if (
substr($entry,0,3)=="rec"
    { 
      
$names[$i]=substr($entry,4); 
      
$i++; 
    } 
  } 
  
$dir_rec->close(); // закрываем директорию 
  
@rsort($names); // сортируем файлы 
  /* определяем очередность сообщений и выводим их */ 
  
$count $i
  
$count1 $count
  if (empty(
$start)) 
  { 
    
$start 0
  } 
  
$start intval($start); 
  if (
$start 0
  { 
    
$start 0
  } 
  print 
"<center>"
  if (
$count $start 10$count $start 10
  if (
$start != 0
  { 
    print 
"<A href=index.php?start=".($start 10).">Предыдущие</A>"
  } 
  print 
"<a href=addrec.php>Добавить запись</A>"
  if (
$count1 $start 10
  { 
    print 
"<A href=index.php?start=".($start 10).">Следующие</A> \n"
  } 
  print 
"</center><br>"
  
/* выводим все сообщения в цикле */ 
  
for ($i $start$i $count$i++) 
  { 
    
$entry $names[$i]; 
    
$data file("records/rec.".$entry); 
    
$date $entry
    
$name trim($data[0]); 
    
$city trim($data[1]); 
    
$email trim($data[2]); 
    
$url trim($data[3]); 
    
$msg trim($data[4]); 
    
/* поле, в которое администратор может добавить ответ */ 
    
$answer trim($data[5]); 
    print 
"<table border=0 cellspacing=0 cellpadding=2 width=100%> 
    <tr bgcolor=#F0F0F0><td>&nbsр;"

    print 
"<b>$name</b>&nbsр;"
    if (!empty(
$city)) print "$city&nbsр"
    if (!empty(
$email)) print "<a href=mailto:$email><i>$email</i></A>\n"
    if (!empty(
$url)) print "<a href=$url>$url</a>"
    print 
"</td><td align=right>".date("<b>d-m-Y</b> H - i, $date").
    </td> 
    </tr>n 
    <tr> 
    <td colspan=2>n"

    print 
"<P>".$msg."</P>n"
    if (!empty(
$answer)) // если администратор что-то ответил 
    

      print 
"<P><font color=#1E90FF>admin:&nbsр$answer</font></P>\n"
    }    
    print 
"</td></tr></table>\n<br><br>\n"
  } 
  print 
"<center>"
  if (
$start != 0
  { 
    print 
"<A href=index.php?start=".($start 10).">Предыдущие</A>"
  } 
  print 
"<a href=addrec.php>Добавить запись</A>"
  if (
$count1 $start 10
  { 
    print 
"<A href=index.php?start=".($start 10).">Следующие</A> \n"
  } 
  print 
"</center>"
  
?> 
  </BODY> 
  </HTML> 

Помогите исправить

   
 
 автор: Киналь   (22.08.2005 в 21:39)   письмо автору
 
   для: DDK   (22.08.2005 в 21:24)
 

Странный Денвер... Я только <?php ?> и пишу - ни разу проблем не было...

ЗЫ
> недолюбливает
"Не надо очеловечивать компьютеры! Они этого страсть как не любят!"

   
 
 автор: DDK   (22.08.2005 в 21:24)   письмо автору
 
   для: 70-й_регион   (22.08.2005 в 02:34)
 

Кстати на будущее касательно Денвера - он недолюбливет тег <?php ?>, лучше использовать <? ?>. Т.е. он выдаст ошибку даже в таком случае:

<?php
echo "Так";
?>
<?
echo "не прокатит";
?>


А вообще говоря - меня Денвер фтыкает... очень мощная штука при изучении PHP...

   
 
 автор: Евгений Петров   (22.08.2005 в 21:05)   письмо автору
 
   для: 70-й_регион   (22.08.2005 в 21:02)
 

Для php html-теги это вооюще куча лишних знаков. Попробуй мой код.

   
 
 автор: 70-й_регион   (22.08.2005 в 21:02)   письмо автору
 
   для: Киналь   (22.08.2005 в 20:49)
 

print "<P><font color=#1E90FF>admin:&nbsр$answer</font></P>\n";
Вот 71 строка где здесь лишний знак

   

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

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

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