Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] własny edytor php
erugio
post 31.12.2007, 17:34:48
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
Go to the top of the page
+Quote Post
loff
post 31.12.2007, 18:03:50
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 ?
  1. <?php
  2. if($tresc = $_POST['tresc'])
  3. ?>


Tutaj przy echo na poczatku stosujesz podwójny cudzysłow a zamykasz pojedynczym - to w ogole działa ?
  1. <?php
  2. echo "<CENTER>
  3. <b>Edycja prywatnej strony</b><BR><form action="index.php?s=edycja" method="POST">
  4. <textarea name="tresc" rows="30" cols="60">';
  5. ?>


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...
Go to the top of the page
+Quote Post
erugio
post 31.12.2007, 18:19:39
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?" smile.gif

Ten post edytował erugio 31.12.2007, 18:20:07
Go to the top of the page
+Quote Post
loff
post 31.12.2007, 18:40:42
Post #4





Grupa: Zarejestrowani
Postów: 39
Pomógł: 15
Dołączył: 21.03.2007
Skąd: Poznań

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


Cytat(erugio @ 31.12.2007, 18:19:39 ) *
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"

Cytat(erugio @ 31.12.2007, 18:19:39 ) *
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?" smile.gif

Moja odpowiedź: nie mam pojęcia - niestety. Nie widzę niczego co miało by ten efekt powodowac.
Go to the top of the page
+Quote Post
erugio
post 31.12.2007, 18:49:04
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 sad.gif
Go to the top of the page
+Quote Post
phpion
post 1.01.2008, 15:01:55
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 smile.gif
Go to the top of the page
+Quote Post
erugio
post 2.01.2008, 13:30:13
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.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:20