Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] odczyt i zapis pliku- początkujący, tylko poważne osoby ...
maxis88
post
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 1
Dołączył: 17.09.2007

Ostrzeżenie: (0%)
-----


Mamm problem ze skryptem do edytowania pliku... Wszystko działa pięknie do momentu wyświetlenia treści na ekranie ... Wtedy dzieją się dwie rzeczy, które psują cały kod ... a mianowicie :
1. ( malo szkodliwe ) - za kazdym zapisaniem pliku na początku tworzy sie kolejny akapit
2. (bardziej szkodliwy)- wszystkie znaki "\" są powielane więc po czterech zapisach zamiast mieć :

\" Tekst \" to mam \\\\" Tekst \\\\"

i nie wiem co z tym fantem zrobić ( chociaż domyślam sie że to wina funkcji file() ... )

poniżej zamieszczam linka do plików

http://www.upik.pl/index.php?id=740605dc87...596a370802c7311

z gory dzięki ;P

Ten post edytował maxis88 23.12.2008, 14:59:21
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
maxis88
post
Post #2





Grupa: Zarejestrowani
Postów: 110
Pomógł: 1
Dołączył: 17.09.2007

Ostrzeżenie: (0%)
-----


dodałem kod:
"rewind($fp);
set_magic_quotes_runtime(false); "

zmieniając oczywiście nazwę zmiennej ale nadal powiela mi znaki "\"... zauważyłem też że tylko do 2 razy bo potem w ogole nie moge wyswietlic strony ;P

oto kod:

function save_file(){

global $filename, $filebody, $dir, $PHP_SELF;

rewind($filebody);
set_magic_quotes_runtime(false);


if(file_exists("$filename")) {

echo "<script>result = confirm(\"Nadpisać '$filename'?\");
if(!result) history.go(-1)</script>";

}
if($file=fopen("$filename", "w+")){

fputs($file, $filebody);
fclose($file);
}else

error_message("Nie mogę zapisać $filepath", 1);
echo "<script>self.location.href='$PHP_SELF?filename=$filename';</script>";
}


co nadal robię źle ? próbowalem dodać tą drugą linijkę kodu na początek pliku php ale też nic nie daje ...


ok już znalazłem rozwiązanie ...

function stripslashes_deep($value)
{
$value = is_array($value) ?
array_map('stripslashes_deep', $value) :
stripslashes($value);

return $value;
}


function save_file(){

global $filename, $filebody, $dir, $PHP_SELF;



if(file_exists("$filename")) {

echo "<script>result = confirm(\"Nadpisać '$filename'?\");
if(!result) history.go(-1)</script>";

}
if($file=fopen("$filename", "w")){
$filebody = stripslashes_deep($filebody);

fputs($file, $filebody);
fclose($file);
}else

error_message("Nie mogę zapisać $filepath", 1);
echo "<script>self.location.href='$PHP_SELF?filename=$filename';</script>";
}


tylko pozostaje problem akapitów na początku... wie ktos dlaczego one powstają ?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 09:55