Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zablokowanie edycji tekstu pomiedzy znacznikami <?php ... ?> w textarea
negusik
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 1
Dołączył: 30.01.2010

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


Witajcie,
Szukam jakiegoś rozwiązania które pomogło by mi w edycji zawartości drobnych plików php z zawartoscia php/html.

Edycja odbywa się poprzez zgranie zawartosci pliku do zmiennej oraz wyswietlenie jej w polu <textarea>.

Przykładowy kod pliku:
CODE
<p><a href="/" title="Strona główna">Strona główna</a><a href="sitemap.html" title="Mapa strony">Mapa strony</a></p>
<div id="mm2">
<ul>
<?php foreach($links as $link => $name): ?>
<li><a href="<?php echo htmlspecialchars($link); ?>" title="<?php echo htmlspecialchars($name); ?>"><?php echo htmlspecialchars($name); ?></a></li>
<?php endforeach; ?>
</ul>
</div>


Użytkownik ma możliwość zapisania zawartosci textarea po swojej edycji do pliku z rozszerzeniem .php

Chciałbym dać użytkownikowi możliwość edycji tylko tekstu w textarea który nie znajduje się w znacznikach kodu <?php ... ?> - ma to na celu, żeby umyślnie lub pomyłkowo nie popsuł działania pliku na serwerze - może modyfikować wygląd i statyczna treść.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A po co tak?

Zamieniaj ten kod na jakiś tag, wypluwaj zawartość do użytkownika w ten sposób i potem zamieniaj przy zapisie. Na co ma userowi cieszyć oko, nie musi wszystkiego wiedzieć (a nawet nie powinien):

  1. Poprzez preg_replace_callback wyłuskujesz kod z ciągu do edycji, funkcja callbacka wrzuca go do jakiegoś klucza w sesji, np. code1
  2. do użytkownika trafia mniej więcej coś takiego:
    1. sdfjhasdfkjas dfasdfasdf sd <code1> sdgfdfgsdfgsdfg
  3. przy zapisie zamieniasz te tagi na zawartość trzymaną w sesji
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: 6.10.2025 - 22:32