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

Форум PHP

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

 

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

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

тема: Данные не сохраняются в txt файлах
 
 автор: Санька   (27.11.2007 в 05:09)   письмо автору
 
 

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

<?php

  
include("../tems/start.php");

  echo 
"<form action=\"admin.php\" method=\"post\">
  Тема опроса<br /><input type=\"text\" name=\"tema\" value=\"\" /><br /><br />
  Вопрос первый<br /><input type=\"text\" name=\"a1\" value=\"\" /><br />
  Вопрос второй<br /><input type=\"text\" name=\"a2\" value=\"\" /><br />
  Вопрос третий<br /><input type=\"text\" name=\"a3\" value=\"\" /><br />
  Вопрос четвертый<br /><input type=\"text\" name=\"a4\" value=\"\" /><br />
  Вопрос пятый<br /><input type=\"text\" name=\"a5\" value=\"\" /><br />
  <input type=\"submit\" value=\"добавить\" />
  </form>"
;

  if(isset(
$_POST['tema']))
  {

     if (
$_POST['tema']=="")
     {
       echo 
'Вы не ввели тему опроса!';
       exit;
     }

     if (
$_POST['a1']=="")
     {
       echo 
'Вы не ввели первый вопрос!';
       exit;
     }

     if (
$_POST['a2']=="")
     {
       echo 
'Вы не ввели второй вопрос!';
       exit;
     }

     if (
$_POST['a3']=="")
     {
       echo 
'Вы не ввели третий вопрос!';
       exit;
     }

     if (
$_POST['a4']=="")
     {
       echo 
'Вы не ввели четвертый вопрос!';
       exit;
     }

     if (
$_POST['a5']=="")
     {
       echo 
'Вы не ввели пятый вопрос!';
       exit;
     }

     
$fileuser fopen("ip.txt","w");
     
fputs($fileuser,"0.0.0.0"."\r\n");
     
fclose($fileuser);
     
$zapis ="$tema\r\n$a1|0\r\n$a2|0\r\n$a3|0\r\n$a4|0\r\n$a5|0\r\n";
     
$filevote fopen("opros.txt","w");
     
fputs($filevote,"$zapis");
     
fclose($filevote);

     echo 
'Голосование создано!<br/>
     Тема: '
.$tema.'<br/>
     1 ответ: '
.$a1.'<br/>
     2 ответ: '
.$a2.'<br/>
     3 ответ: '
.$a3.'<br/>
     4 ответ: '
.$a4.'<br/>
     5 ответ: '
.$a5.'<br/>';
  }

  include(
"../tems/end.php");

?>

   
 
 автор: cheops   (27.11.2007 в 12:11)   письмо автору
 
   для: Санька   (27.11.2007 в 05:09)
 

Вообще новых строк в файлах не появляется?
Выведите $zapis перед записью в файл в окно браузера - что-нибудь выводится?

   
 
 автор: Санька   (27.11.2007 в 13:42)   письмо автору
 
   для: cheops   (27.11.2007 в 12:11)
 

То что я прописываю в файлах не появляется, а нули те что в этом файле прописаны записываются, на экран выводятся только нули вместо моих слов.

   
 
 автор: sim5   (27.11.2007 в 13:42)   письмо автору
 
   для: Санька   (27.11.2007 в 05:09)
 


<?
$error 
"";
//определим, чтобы не заставлять пользователя все набирать заново
//в случае ошибок в заполнении формы
$tema = !empty($_POST["tema"]) ? $_POST["tema"] : "";
$a1   = !empty($_POST["a1"]) ? trim($_POST["a1"]) : "";
$a2   = !empty($_POST["a2"]) ? trim($_POST["a2"]) : "";
$a3   = !empty($_POST["a3"]) ? trim($_POST["a3"]) : "";
$a4   = !empty($_POST["a4"]) ? trim($_POST["a4"]) : "";
$a5   = !empty($_POST["a5"]) ? trim($_POST["a5"]) : "";

if(!empty(
$_POST['send'])) {
  if (
$_POST['tema']==""$error .= 'Вы не ввели тему опроса!<br>'
  if (
$_POST['a1']==""$error .= 'Вы не ввели первый вопрос!<br>'
  if (
$_POST['a2']==""$error .= 'Вы не ввели второй вопрос!<br>'
  if (
$_POST['a3']==""$error .= 'Вы не ввели третий вопрос!<br>'
  if (
$_POST['a4']==""$error .= 'Вы не ввели четвертый вопрос!<br>'
  if (
$_POST['a5']==""$error .= 'Вы не ввели пятый вопрос!';

  if (empty(
$error)) {
    
$zapis ="$tema|$a1|$a2|$a3|$a4|$a5\r\n"
    
$filevote fopen("opros.txt","a");
    
flock($filevoteLOCK_EX);
    
fputs($filevote,"$zapis"); 
    
flock($filevoteLOCK_UN);
    
fclose($filevote);
    
//перенаправление на себя от F5
    
header('location: admin.php');
  }
}

if(empty(
$_POST['send']) || !empty($error)) {
//если флуд не показатель, форма выводится всегда
if (!empty($error)) print "<P><font color=#ff0000>".$error."</font></P>";
print 
"<form action=\"admin.php\" method=\"post\">
  <input type=\"hidden\" name=\"send\" value=\"1\">
  Тема опроса<br /><input type=\"text\" name=\"tema\" value=\"
$tema\" /><br /><br /> 
  Вопрос первый<br /><input type=\"text\" name=\"a1\" value=\"
$a1\" /><br /> 
  Вопрос второй<br /><input type=\"text\" name=\"a2\" value=\"
$a2\" /><br /> 
  Вопрос третий<br /><input type=\"text\" name=\"a3\" value=\"
$a3\" /><br /> 
  Вопрос четвертый<br /><input type=\"text\" name=\"a4\" value=\"
$a4\" /><br /> 
  Вопрос пятый<br /><input type=\"text\" name=\"a5\" value=\"
$a5\" /><br /> 
  <input type=\"submit\" value=\"добавить\" /> 
  </form>"
;
}

if (
file_exists('opros.txt')) {
//если уже есть записи, выводим
$txt explode('|',end(file('opros.txt')));
     print 
'<br><br>Результат последнего голосования<br/> 
     Тема: '
.$txt[0].'<br/> 
     1 ответ: '
.$txt[1].'<br/> 
     2 ответ: '
.$txt[2].'<br/> 
     3 ответ: '
.$txt[3].'<br/> 
     4 ответ: '
.$txt[4].'<br/> 
     5 ответ: '
.$txt[5].'<br/>';
}
?>

   
 
 автор: Санька   (27.11.2007 в 13:46)   письмо автору
 
   для: sim5   (27.11.2007 в 13:42)
 

Разобрался, можно проще пописываю $a1=$_POST['a1'] и т.д

   
 
 автор: sim5   (27.11.2007 в 13:47)   письмо автору
 
   для: Санька   (27.11.2007 в 13:46)
 

Можно, но при первом запуске скрипта у вас не будет $_POST['a1'] и т.д

   
 
 автор: Санька   (27.11.2007 в 14:21)   письмо автору
 
   для: sim5   (27.11.2007 в 13:47)
 

Не понял, поподробней можно?

   
 
 автор: sim5   (27.11.2007 в 14:31)   письмо автору
 
   для: Санька   (27.11.2007 в 14:21)
 

Можно. Вот урок, который вы, видимо, позабыли.

   
Rambler's Top100
вверх

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