Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: База в текстовом файле
Форум программистов > Интернет и сети > Web-программирование > PHP программирование
Dico
У меня есть база в текстовом файле.
Записана так:

1::текст::текст2::текст3::текст4
2::текст::текст2::текст3::текст4
3::текст::текст2::текст3::текст4

Мне нужно когда я нажимаю на кнопку обновить
происходило следующие:

Строка 3 перезаписывалась наверх, но не удаляла
строку1, а писала её выше.

Вот так:

3::текст::текст2::текст3::текст4
1::текст::текст2::текст3::текст4
2::текст::текст2::текст3::текст4

Этот текстовик пополняется.

Подскажие плиз.

ДАЙТЕ КОД!!!!!!!!!!!!!!!!!
Jkar
Что тебе ещё дать?

короче, читайешь file()'ом, а потом переставляешь как нужно.
Dico
А кусок кода написть сложно?
Dico
А кусок кода написть сложно?
????
Цитата
А кусок кода написть сложно?

На каком языке?
Dico
PHP
kirkro
Вот приблизительный код:
<?php
$array=file('имя_файла');
$str=array_pop($array); // вырезаем последний элемент массива
array_unshift($array, $str); // вставляем его в начало
$fh=fopen('имя_файла', 'w');
foreach($array as $value)
{
   fputs($fh, $value);
}
fclose($fh);
?>

Вроде должно работать, хотя может есть и более оптимальный вариант
Dico
Спосибо попробую
Dico
А если это не последняя строка как быть например:
Всего 10.
Надо вверх 6 строку? Как?
Jkar
Ну это практически тоже самое, что и у kirkro, только

$str = $array[5];
...
unset($array[5]);
Dico
Почему не хочет выполняться?

$id="10";

$array=($base_file);
$str = $array[$id];
unset($array[$id]); // вырезаем элемент массива
array_unshift($array, $str); // вставляем его в начало

$fh=fopen($base_file, 'w');

foreach($array as $value)
{
fputs($fh, $value);
}
fclose($fh);


Вроде всё правельно?
kirkro
а что значит строка $array=($base_file);?
может ты просто забыть написать $array=file($base_file);?
Jkar
или может забыл <?php и ?> написать? smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2008 IPS, Inc.