![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 0 Dołączył: 17.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Chciałbym zrobić edytor php na swojej stronie. Żeby po zalogowaniu się, można było edytować, ale również kod PHP, (HTML bez problemu zapisuje), ale po zapisie kodu PHP, do każdej lini sam dopisuje ten znak i przez to sypie się cały kod. Kod if($tresc = $_POST['tresc'])
{ $open = fopen($plik, 'w'); fwrite($open, $tresc); fclose($open); echo 'Zmiany zostaly zapisane! <a href="http://internauci.org/'; echo $_COOKIE[login]; echo '/" target="_blank">Podgląd</a><BR>'; } echo "<CENTER> <b>Edycja prywatnej strony</b><BR><form action="index.php?s=edycja" method="POST"> <textarea name="tresc" rows="30" cols="60">'; include $plik; echo '</textarea><BR><input type="submit" value="zapisz"></FORM></CENTER>'; Ten post edytował erugio 31.12.2007, 19:48:21 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 15 Dołączył: 21.03.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Jaki to jest ten znak ? bardzo chaotyczne pytanie w moim odczuciu w sumie nie wiem z czym jest problem a tym bardziej do czego służy ten kod.
Czy to miał być warunek czy przypisanie ?
Tutaj przy echo na poczatku stosujesz podwójny cudzysłow a zamykasz pojedynczym - to w ogole działa ?
Zadaj pytanie konkretniej i opisz tak zebyśmy mogli zrozumieć z czym masz dokładnie problem bo na razie wiem ze piszesz edytor i cos nie działa bo jakis znak... |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 0 Dołączył: 17.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście kod działa, tamto echo" jest pozostałością po innym elemęcie edytora, zdradzającym moją pufność. Oczywiście nie ma tego ".
Chodzi o skrytp który edytuje pliki PHP. Do <textarea> wczytuje edytowany plik.php. Po wprowadzeniu zmian, przez formularz jest wysyłana zmienna tego edytowanego tekstu.php. Dlatego Kod if($tresc = $_POST['tresc']) "Jeśli jest zczytana zmienna $tresc" to: zamienia istniejącą wersję na nową (edytowaną). To taki edytor PHP, tylko tyle, że na serwerze. W HTML sprawdza się wyśmienicie, natomiast jeśli chodzi o php to za każdą próbą zapisu, dopisuje do każdej linijki ten znak ' \ '. I przez to cały kod PHP się sypie. Moje pytanie brzmi "co zrobić, żeby działało?" ![]() Ten post edytował erugio 31.12.2007, 18:20:07 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 15 Dołączył: 21.03.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Dlatego Kod if($tresc = $_POST['tresc']) "Jeśli jest zczytana zmienna $tresc" to: zamienia istniejącą wersję na nową (edytowaną). Gwoli ścisłosci wg mnie to jest "jesli , przypisz zawartosc zmiennej $_POST['tresc'] do zmiennej $tresc" To taki edytor PHP, tylko tyle, że na serwerze. W HTML sprawdza się wyśmienicie, natomiast jeśli chodzi o php to za każdą próbą zapisu, dopisuje do każdej linijki ten znak ' \ '. I przez to cały kod PHP się sypie. Moje pytanie brzmi "co zrobić, żeby działało?" ![]() Moja odpowiedź: nie mam pojęcia - niestety. Nie widzę niczego co miało by ten efekt powodowac. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 0 Dołączył: 17.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
Z
Kod <? echo "ooo"; ?> robi coś takiego: Kod <? echo \"OK\"; ?> I przy następnym wczytaniu strony do edytora zwraca błąd ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Przed zapisem danych do pliku przeleć je funkcją stripslashes" title="Zobacz w manualu PHP" target="_manual i będzie ok
![]() |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 0 Dołączył: 17.09.2007 Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście działa. Dzięki bardzo.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 18:20 |