Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zapis textarea do pliku
Niree
post 17.07.2019, 14:42:03
Post #1





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

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


Witam, chciałbym zrobic edytor pliku PHP.

Biorę więc:
  1. $schema = file_get_contents('plik.php');

(plik.php)
  1. <?php
  2. $title = 'Rejestracja';
  3. $callout = '<p class="callout" style="padding:15px;background-color:#ECF8FF;margin-bottom: 15px;">Wiadomość wysłana automatycznie, prosimy na nią nie odpowiadać.</p>';
  4. ?>

  1. <textarea class="form-control" rows="3" name="schema" style="height: 800px;"><?php echo $schema;?></textarea>
  2. ... submit itp...
  3. </form>


Kod pokazuje się OK. Po kliknięciu submit, w _POST mam nowy kod php. W momencie zapisu tego _POST do pliku, w pliku pojawiają się jakieś krzaki typu &lt; &gt; zamiast czystego kodu z _POST;

  1. file_put_contents('plik.php', $_POST['schema']);


Proszę o pomoc.

Go to the top of the page
+Quote Post
nospor
post 17.07.2019, 14:43:24
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Wyglada jakbys po drodze gdzie filtrowal dane z POST


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Niree
post 17.07.2019, 14:47:51
Post #3





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

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


Po debugu print_r($_POST):
  1. Array ( [schema] => <?php $title = 'Aktualizacja zgłoszenia'; $subject = 'Aktualizacja '.$complaintinfo->unique_id; $callout = '<p class="callout" style="padding:15px;background-color:#ECF8FF;margin-bottom: 15px;">Wiadomość wysłana automatycznie, prosimy na nią nie odpowiadać.</p>'; ?> )


Kod:
  1. if(isset($_POST['processEmailTemplate']))
  2. {
  3. file_put_contents('plik.php', $_POST['schema']);
  4. $json['message'] = 'Dokonano edycji. Konieczne będzie odświeżenie strony...';
  5. echo json_encode($json);
  6. }


Kod po zapisie:
  1. &lt;?php
  2. $title = 'Aktualizacja zgłoszenia';
  3. $subject = 'Aktualizacja '.$complaintinfo-&gt;unique_id;
  4. $callout = '&lt;p class=&quot;callout&quot; style=&quot;padding:15px;background-color:#ECF8FF;margin-bottom: 15px;&quot;&gt;Wiadomość wysłana automatycznie, prosimy na nią nie odpowiadać.&lt;/p&gt;';
  5. ?&gt;

Go to the top of the page
+Quote Post
nospor
post 17.07.2019, 14:50:26
Post #4





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Zobacz jak wyglada twoj print_r w zrodle strony a nie tak sprawdzasz.... by wejsc w zrodlo strony zazwyczaj trzeba wcisnac CTRL+U


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Niree
post 17.07.2019, 14:52:23
Post #5





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

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


Cytat(nospor @ 17.07.2019, 15:50:26 ) *
Zobacz jak wyglada twoj print_r w zrodle strony a nie tak sprawdzasz.... by wejsc w zrodlo strony zazwyczaj trzeba wcisnac CTRL+U


Wiesz co... Potwierdziło się to filtrowanie. Mam klasę filtrującą $_POST, kompletnie o niej zapomniałem.

  1. if (ini_get('magic_quotes_gpc')) {
  2. $data = stripslashes($data);
  3. } else {
  4. $data = htmlspecialchars($data, ENT_QUOTES, 'UTF-8');
  5. }


stripslashes czy htmlspecialchars powoduje zmianę tych wszystkich znaków na tekstowe?
Go to the top of the page
+Quote Post
nospor
post 17.07.2019, 14:54:00
Post #6





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Tak, to wlasnie to.

Kiedy wy sie nauczycie by nie robic takich cudow? To sie robilo 100 lat temu...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 29.03.2024 - 00:07