Jak wprowadzać dane aby mieć możliwość późniejszej edycji
Gdy wprowadzamy dane do pliku w postaci sformatowanego kodu html, istnieje
jedna główna wada - nie można takiego pliku modyfikować w wygodny sposób
(pozostaje grzebanie w kodzie, ustawianie przywilejów itd...).
Aby mieć możliwość edycji, musimy zapisać dane najlepiej w postaci wartości
odzielonych od siebie (w tym przypadku) operatorami.
Aby przetestować tą metodę utwórz trzy pliki:
formularz.htm
zapis.php3
edycja.php3
formularz.htm
--------------------------------------------------
<form action="zapis.php3" method="post">
<input type="hidden" name="ok" value="1"><br>
<input type="text" name="zmienna1" size="45"><br>
<input type="text" name="zmienna2" size="45"><br>
<input type="text" name="zmienna3" size="45"><br>
<input type="submit" value="submit">
</form>
--------------------------------------------------
w pliku formularz mamy trzy pola do wprowadzania
danych, dane z tych pól przesyłamy do pliku zapis.php3
zapis.php3
--------------------------------------------------
<?
$dane="||$zmienna1||$zmienna2||$zmienna3";
$file="plik.txt";
$fp=fopen("$file",
"w");
flock($fp, 2);
fwrite($fp, $dane);
flock($fp, 3);
fclose($fp);
?>
--------------------------------------------------
w pliku zapis.php3 formatujemy dane na zasadzie
zmienna - operator - zmienna - operator - itd...
i zapisujemy do "plik.txt" (nie zapomnij o uprawnieniach
dla plik.txt - chmod 666)
edycja.php3
--------------------------------------------------
<?
$file = file("plik.txt");
$total = count($file);
for($i=0; $total > $i;
$i++){
$split = explode("||", $file[$i]);
}
?>
<form action="zapis.php3" method="post">
<input type="text" name="zmienna1" size="45"
value="<? echo $split[1];
?><br>
<input type="text" name="zmienna2" size="45"
value="<? echo $split[2];
?><br>
<input type="text" name="zmienna3" size="45"
value="<? echo $split[3];
?><br>
<input type="submit" value="submit"><br>
</form>
--------------------------------------------------
W pliku edycja.php3 dzieje się najważniejsza część, o którą chodzi w tej
poradzie. Pobieramy dane z pliku (plik.txt) dzielimy dane pomiędzy
operatorami i zamieniamy w tablicę. Każdy wpis pomiędzy operatorami jest
przenumerowany i według kolejności wstawiony do pól tekstowych formularza do
edycji (znaki operatorów są przy tej operacji usunięte. I tak mamy stworzone
"zamknięte koło", które możemy cały czas modyfikować i wprowadzać
zmiany.
Metoda ta świetnie sprawdza się w przypadku np. mało skomplikowanego
cennika, który od czasu do czasu trzeba modyfikować.
Autor:Bastek
http://www.bastek.zwa.pl
__________________________________________ Artykuł dodano: 2003-01-04 16:02:45
Strona czytana: 10918 razy
|