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

Форум PHP

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

 

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

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

тема: не корректная запись в файл .
 
 автор: dima2207   (23.02.2007 в 03:39)   письмо автору
 
 

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

<?
$i
=$_GET[p];
$file fopen ("nomer.txt","r+");
  if ( !
$file )
  {
    echo(
"Ошибка открытия файла");   
  }                                                           
//-----------------------------------
  
else                                                       //          Получаем номер          
  
{                                                            //        файла,и сохраняем        
    
fputs $file$i);                                   //               его в файл              
  
}                                                              // ---------------------------------
  
fclose ($file);
//-----------------------------------------------------------------------------------
$perem file ($i.".txt"); //Читаем из файла под номером $i.txt и помещаем в текстареа для редактирования
$str implode(" ",$perem);
echo 
"<form method=POST action='submit.php'><td><textarea class=\"F3\" name='form' rows=\"20\" cols=\"65\">$str</textarea>";
echo
"<input class=\"F1\" type=\"submit\" value=\"Подтвердить;\"></form>";

?>



далее , передаем все это дело на другую страницу :


<?php
$per
=$_POST[form];//                 Получаем содержимое текстареа
 
$file fopen("nomer.txt","r");    // читаем номер файла , в который нужно переписать информацию
  
if(!file)
    {
      echo(
"Ошибка открытия файла");
    }
    else
    {
      
$buff fread ($file,2);
//--------------------------------------------------------------------------
$file2 fopen ($buff.'.txt',"r+");  //            Записываем в файл под номером $buff.txt новую инфу
  
if ( !$file )
  {
    echo(
"Ошибка открытия файла");
  }
  else
  {
    
fputs $file2$per);
  }
  
fclose ($file);
    }
?>



и что самое интересное - алгоритм рабочий !!! а инфа записывается не корректно !!!!!!
почему??? помогите разобратся !!!!!!!!!!!!!

   
 
 автор: Sl   (23.02.2007 в 06:58)   письмо автору
 
   для: dima2207   (23.02.2007 в 03:39)
 


$per=$_POST[form];

Почему имя передается без ковычек? Или это без разницы с ковычками или без ?

$per=$_POST['form'];

   
 
 автор: bronenos   (23.02.2007 в 07:50)   письмо автору
 
   для: dima2207   (23.02.2007 в 03:39)
 

Кавычки есть или нет это главное чтоб не было error reporting и константы одноименной
А насчет файла, то когда вы записываете, вы не вставляете в какое то место данные, а перезаписываете их поверх существующих данных в середине
Или открывайте файл с 'w' чтоб перезаписать полностью или с 'a' чтоб записать в конец

   
 
 автор: dima2207   (23.02.2007 в 13:08)   письмо автору
 
   для: bronenos   (23.02.2007 в 07:50)
 

нет , я перезаписываю файл полностью , да и файл вроде-бы открывается с начала , как на запись так и чтение , ума не приложу в чем дело ???а открываю я с помощью w-на запись , r - на чтение !!!!
а может быть вот тут данные теряются ?
$str = implode(" ",$perem);
да , и еще , у меня данные хранятся в файле в виде массива , т.е . каждая строчка с новой строки , а записывается в одну строчку , у меня вопрос - как записать массив в файл ????
только мне как я понимаю с начала нужно занести в массив из переменной $per в массив , а потом уже записывать ???

   
Rambler's Top100
вверх

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