![]() |
![]() ![]() |
![]() |
![]()
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 |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Google: magic_quotes
|
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Przenosze z PHP na Przedszkole.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 110 Pomógł: 1 Dołączył: 17.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
szukałem o tych magic_quotes, znalazłem kilka linijek kodu które niby to usuwają ale nic nie działa ;/ może mi ktoś napisać konkretny przykład pasujący do mojego "projektu"?
|
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A może konkretny kod, którego użyłeś?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 110 Pomógł: 1 Dołączył: 17.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
<?php
$zmienna = escape_data($zmienna ); // Ta zmienna, z której chcemy się pozbyć slash'y przed cudzysłowami etc ?> oraz <?php if(get_magic_quotes_gpc()){ function stripslashes_deep($value){ $value = is_array($value) ? array_map('stripslashes_deep', $value) : stripslashes($value); return $value; } $_POST = array_map('stripslashes_deep', $_POST); $_GET = array_map('stripslashes_deep', $_GET);} ?> w pierwszym pisze mi ze nie wie co to za funkcja a w drugim nie widac reakcji ... chyba ze cos zle robie ... |
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
|
|
|
![]()
Post
#8
|
|
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ą ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 15:51 |