Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][html]problem z formularzem
tomekby
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.10.2007
Skąd: Bydgoszcz

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


mam problem, bo chciałem zrobić coś w rodzaju opcji "edytuj" na forum, tylko nie wiem jak zrobić, żeby na przykład plik przyklad.html wyświetlał się w polu typu texarea sad.gif
może mi ktoś pomóc questionmark.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
tsharek
post
Post #2





Grupa: Zarejestrowani
Postów: 300
Pomógł: 1
Dołączył: 22.09.2003
Skąd: Czeladź

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


  1. <?php
  2. echo '<textarea>'.htmlspecialchars(file_get_contents('przyklad.html')).'</textarea>';
  3. ?>


Ten post edytował tsharek 29.10.2007, 12:00:53


--------------------
Go to the top of the page
+Quote Post
tomekby
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.10.2007
Skąd: Bydgoszcz

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


a jeszcze takie pytanie :
jak to już mam, to da radę zrobić, aby był wcześniej formularz, gdzie się wpisuje nazwę pliku, który ma zostać otwarty, klika na przycisk (submit) i przenosi do formularza z otwartym danym dokumentem questionmark.gif
bo jak próbuję wewnątrz tamtego kodu użyć funkcji echo[php] to mi wyskakuje błąd sad.gif
Parse error: parse error in c:\... on line 20

ps. w razie co mam zainstalowany no kompie dobrze działający serwer biggrin.gif
pps. niestety w php jestem dość nowy, jedyny kontakt z tym językiem miałem przy używaniu skryptów i ich ewentualnym niewielkim modyfakajcom sad.gif
Go to the top of the page
+Quote Post
best-two
post
Post #4





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 29.10.2007
Skąd: Częstochowa

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


Można zrobić w taki sposób:

  1. <?php
  2. echo '<form method="POST" action="index.php">
  3. <input type="text" name="nazwa">
  4. <input type="submit"></form>';
  5.  
  6. if($_POST['nazwa']==true){
  7. echo '<textarea>'.htmlspecialchars(file_get_contents('$_POST[nazwa']')).'</textarea>;
  8. }
  9. ?>


Wszystko wykonuje sie w jednym pliku smile.gif
Go to the top of the page
+Quote Post
tomekby
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.10.2007
Skąd: Bydgoszcz

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


jednak nie sad.gif
wyskakuje mi :
Parse error: parse error in c:\... on line 26

czyli w linii :

name="2">'.htmlspecialchars(file_get_contents('$_POST['1']')).'</textarea>;

wie ktoś o co chodzi questionmark.gif
Go to the top of the page
+Quote Post
drPayton
post
Post #6





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


Usuń apostrofy wewnątrz file_get_contents (łączenie stringów się kłania winksmiley.jpg )

Ten post edytował drPayton 31.10.2007, 14:43:06
Go to the top of the page
+Quote Post
tomekby
post
Post #7





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.10.2007
Skąd: Bydgoszcz

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


dobra, teraz następny problem sad.gif
mam już formularz, w którym wyświetla się plik, ale jak próbuję wprowadzić zmiany, to zapisuje się to samo jeszcze raz + wprowadzone zmiany sad.gif
tutaj pytanie : jak zrobić, żeby można było wprowadzać dowolne zmiany i TYLKO to, co zatwierdzam się wyświetalało(to, co się znajduje w formularzu), a nie to co było + to co zatwierdzam questionmark.gif
tu jest plik :
Kod
       <HTML>
          
          <HEAD>
          
          </HEAD>
          
          <BODY>
          
             <form action="formularz.php" method="POST">
          <?php
          echo '<textarea rows=50 cols=101 name=TEKST>'.htmlspecialchars(file_get_contents('hr.html')).'</textarea>';
          ?>
             <input type=submit value="wyślij"/>
          
          <?
          {
          $file=fopen("hr.html", "r");
          flock($file, 1);
          
          for($lineNr=1;true;$lineNr++)
          {
          $linia=fgets($file, 81); // odczytuje kolejną linię z pliku
          
          if(!$linia)
          break; // kończy pętle, jeśli natrafi na koniec pliku
          
          $linie[$lineNr]=$linia; // dopisuje linię do tablicy $linie
          }
          
          flock($file, 3);
          fclose($file);
          
          $nLines=$lineNr; // zapisuje ilość lini w zmiennej $nLines
          
          $file=fopen("hr.html", "w");
          flock($file, 2);
          
          if($nLines<16) // jeżeli lini jest mniej niż 16 zapisywanie
          $lineNr=1; // do pliku zacznie się od pierwszej lini
          else // jeżeli 16 lub więcej, zapisywanie
          $lineNr=2; // zaczyna się od 2 lini
          
          for(;$lineNr<$nLines;$lineNr++) // zapisuje kolejne linie
          fwrite($file, $linie[$lineNr]);
          
          fwrite($file, $TEKST); // dopisuje linię podaną przez użytkownika
          fwrite($file, "\n");
          
          flock($file, 3);
          fclose($file);
          } ?>
          
          </FORM>


Ten post edytował tomekby 2.11.2007, 15:08:35
Go to the top of the page
+Quote Post
PawelC
post
Post #8





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


Daj uprawnienia w+ plikowi który odczytujesz i poźniej w nim zapisujesz.
uprawnienie w+ otwiera plik do odczytu i zapisu, i gdy będziesz do niego zapisywał to wyczyści go i zapisze do niego tylko te dane które chcesz zapisać z formularza.
Go to the top of the page
+Quote Post
tomekby
post
Post #9





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.10.2007
Skąd: Bydgoszcz

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


a co zrobić, żeby akceptowało cudzysłowy questionmark.gif

np.: jak piszę kod :
  1. <body bgcolor="gold">

albo:
  1. <body bgcolor="red">

to wyświetla mi tak, jakbym napisał kod :
  1. <body bgcolor="black">

albo:
  1. <body bgcolor="limegreen">

przy okazji, jak chcę wyedytować plik, to przed i po cudzysłowach wyświetla mi po każdym zapisie jeden "/"
bez cudzysłowów wszystko działa poprawnie, prócz tego, że niektórych żeczy bez tego nie da się wykonać...
a jak próbuję wyedytować plik *.php to wszystkie funkcje wysiadają sad.gif
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 Aktualny czas: 19.08.2025 - 17:01