Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: голосование

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
mihai
Отправлено: 06 Апреля, 2009 - 16:45:55
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Сент. 2006  


Помог: 0 раз(а)




срисовал с книжки скрипт голосования
но
что то не работает

при первом запуске-голосовании
выдаёт ошибку

чисто интуитивно понимаю, что не может создать и записать в файл,
но вот почему

пожалуйста помогите исправить

Warning: fopen(ocenka/.txt) [function.fopen]: failed to open stream: No error in Z:\home\localhost\www\golosxxx\ocenka.php on line 42

Warning: fwrite(): supplied argument is not a valid stream resource in Z:\home\localhost\www\golosxxx\ocenka.php on line 43

Warning: fclose(): supplied argument is not a valid stream resource in Z:\home\localhost\www\golosxxx\ocenka.php on line 44

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?
  4. $dir="ocenka";
  5. $ocenka=$ind.".txt";
  6. $way="$dir/$ocenka";
  7. if
  8. (!isset($_POST['ball']))
  9. {
  10. if
  11. (file_exists($way)==true)
  12. {
  13. $file=file($way);
  14. $vsego=(int)$file[0];
  15. $srednee=(float)$file[1];
  16. echo "колличество оценок этой статьи:$vsego";
  17. echo "Средняя оценка статьи:$srednee";
  18. }
  19. echo"<form method=POST action=ocenka.php>
  20. <input name=ind type=hidden value=$ind>
  21.     <select name=ball>
  22.     <option value=5>5 отлично</option>
  23.     <option value=4>4 четыре</option>
  24.     <option value=3>3 троечка</option>
  25.     <option value=2>2 двоечка</option>
  26.     <option value=1>1 еданичка</option>
  27.  </select>
  28.     <input name=submit type=submit value=оценить>
  29. </form>";
  30. }
  31. else
  32. {
  33. $ball=$_POST['ball'];
  34. $ind=$_POST['ind'];
  35. $ocenka=$ind.".txt";
  36. $way="$dir/$ocenka";
  37.  
  38. if(file_exists($way)!==true)
  39. {
  40. $vsego=1;
  41. $srednee=$ball;
  42. $count=$vsego."\n".$srednee;
  43. $open=fopen($way, "W+");
  44. fwrite($open, $count);
  45. fclose($open);
  46. }
  47. else
  48. {
  49.  
  50. $file=file($way);
  51. $vsego=(int)$file[0];
  52. $srednee=(float)$file[1];
  53. $vsego++;
  54. $srednee=($srednee*($vsego-1)+$ball)/$vsego;
  55. $srednee=round($srednee,2);
  56. $count=$vsego."\n".$srednee;
  57. $open=fopen($way, "r+");
  58. flock($open, LOCK_EX);
  59. fwrite($open, $count);
  60. flock($open, LOCK_UN);
  61. fclose($open);
  62. }
  63. echo "спасибо за ваш голос<br>";
  64. echo "вернуться";
  65. }
  66. ?>
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
 
 Top
vitaliy_mad
Отправлено: 06 Апреля, 2009 - 19:41:24
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




mihai пишет:
fopen(ocenka/.txt)

mihai пишет:
$ocenka=$ind.".txt";

Переменная $ind не определена. и соответственно файл ".txt" не может быть прочитан или записан...
 
 Top
mihai
Отправлено: 07 Апреля, 2009 - 14:07:47
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Сент. 2006  


Помог: 0 раз(а)




и если вот так то тоже не работет
$ind=1;

(Отредактировано автором: 07 Апреля, 2009 - 15:36:35)

 
 Top
chaynyk
Отправлено: 10 Апреля, 2009 - 22:45:50
Post Id



Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Сент. 2007  
Откуда: MOSCOW


Помог: 0 раз(а)




попробуй заменить:

вместо

в двух местах.
проверь наличие папки Z:\home\localhost\www\golosxxx\ocenka\
в случае не удачи пришли код ошибки и выложи код с номерами строк, а то тяжело определить строку 42 и т.д.


-----
Чайник в PHP и SEO,http://fleshky[dot]ru
 
 Top
vitaliy_mad
Отправлено: 10 Апреля, 2009 - 22:53:44
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




mihai пишет:
и если вот так то тоже не работет
$ind=1;

а файл 1.txt есть?
 
 Top
magistr_bender
Отправлено: 10 Апреля, 2009 - 23:32:57
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2009  


Помог: 0 раз(а)




всё намного проще...
автор просто не указал как ему надо открыть файл
попробуй fopen(имя_файла, 'r')
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB