Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]formularze, includowanie
Forum PHP.pl > Forum > Przedszkole
mirek_miro
witam

Jestem początkujący jeżeli chodzi o programowanie wiec licze na wyrozumiałość smile.gif
Chce szybko i prosto dodawać newsy do mojej stronki. Nie mam zamiaru babrać się w kodzie źródłowym aby dodawać kolejne newsy.

Zrobiłem wiec dzisiaj sobie formularz:

  1. <form action="plik.php" method="post" onreset="if (!confirm('Czy na pewno chcesz wyczyścić cały formularz?')) return false">
  2. <label>formularz</label> <br>
  3. <textarea name="pole1" style="width: 200px; height: 100px;"></textarea>
  4. <center>
  5.  
  6. <input type="submit" value="Wyslij" /></form>
  7. <input type="reset" value="Resetuj" />
  8.  
  9.  
  10. </center>



Plik.php

  1. Pliki zostały zapisane :)<br>
  2. <a href="formularz.html">Cofnij</a>
  3.  
  4.  
  5. <?php
  6. // register_globals!
  7. $pole1 = $_POST['pole1'];
  8.  
  9. $address = getenv("REMOTE_ADDR");
  10.  
  11. $filename = "index.txt";
  12. $nam = stripslashes($pole1);
  13.  
  14. $a = "$pole1";
  15. $filed = @fopen($filename, "a+");
  16. @fwrite($filed, "$a $a2 $a3 $a4 $a5 $a6");
  17.  
  18. fclose($filed);
  19.  
  20. $msg = "<p>Data Input complete</P>";
  21.  
  22. ?>


Na stronce mam wklejony include:

  1. <?php include("index.txt"); ?>


Wszystko ładnie działa. Wpisuje newsa, wysyłam, zapisuje się on w pliku txt, includuje na stronke i ładnie się wyświetla.
Problem polega na tym, że nawet gdy wpisuje newsa w wielu linijkach to wyswietla się on tylko w jednej linii ;/
(wpisuje:
1
1
1
a wyświetla jako:
111)
Poza tym po dodaniu długiego newsa strona mi się "rozjeżdża". Co zrobić aby newsy wyświetlałby się w kilku liniach
oraz jak ustawić "limit" znaków na stronie w jednej lini aby mi się strona nie rozjeżdżała?

PS. Czy jest możliwość aby nie includować newsów z index.txt do index.php tylko od razu zeby mi się newsy "spajały" z index.php?

z góry dzieki
CyberDuck_
Mozesz wygenerowac dowolny plik.
Musisz tylko wiedziec, ze nawet w danych z formularzy sa dodawane
specjalne znaki np entera, ktory jest reprzentowany jako /n .
Tak wiec na koncu kazdej linii dodaj sobie ten znak, a przed
wyswietlaniem przy pomocy np preg_replace zamien na <br> .

U Ciebie dzieje sie tak bo zapisujesz wszystko jak leci w pliku txt, ale
pozniej tez tak chcesz wyswietlac niedbajac o dodatkowe znaki np
wlasnie konca linii.
Berg
nl2br na treść przesłaną formularzem z pewnością pomoże winksmiley.jpg
Jeśli chodzi o edycje bezpośrednio w index.php to możesz przecież potraktować go jak normalny plik tekstowy - wczytujesz, wyszukujesz początek kodu html, doklejasz nową treść do już istniejącej i zapisujesz ponownie. Ale szczerze zostałbym na Twoim miejscu przy plikach txt, bezpośrednie dopisywanie treści przesłanej formularzem do pliku php nie jest zbyt bezpiecznym rozwiązaniem smile.gif
Ps: Do wczytywania treści plików służy np. file_get_contents, include lepiej zostawić jedynie dla plików php.
mirek_miro
yyy nie mam pojęcia jak zastosować wasze wskazówki biggrin.gif Dopiszecie mi je do plików podanych przez mnie w poprzednim poście?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.