Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Odczyt pliku po naciśnięciu buttonu
Papub
post 25.01.2007, 22:46:06
Post #1





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 17.02.2006

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


Jak zrobić to co zamieściłem w temacie. Bo przecież kod <input type button .... to jest w htmlu.
Odczytać z pliku dane umię tylko się głowie jak zrobić żeby po naciśnięciu buttona dane wyskakiwały NA TEJ SAMAEJ STRONIE bez przeładowania.
Go to the top of the page
+Quote Post
Cienki1980
post 25.01.2007, 22:54:39
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


Umieść dane w ukrytym div'ie i po klknięciu na button pokaż div'a ( czyli zmień jego display=none na display=inline ).


--------------------
404
Go to the top of the page
+Quote Post
Papub
post 25.01.2007, 23:15:48
Post #3





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 17.02.2006

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


No zrobiłem tego diva
echo '<div id="ukryty" style="display: none">';

póżniej dałem to:

echo '<input type=button value=Wczytaj onClick="document.getElementById('ukryty').style.display='inline';">';

i otrzymałem to:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in mojastrona.php on line 65
Go to the top of the page
+Quote Post
Cienki1980
post 26.01.2007, 08:24:41
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


Mimo, że nie podświetliłeś składni ( BBCode ) to strzelam, że masz problem z apostrofami i cudzysłowami.
Powinno coś takiego być:

  1. <?php
  2. echo "<div id="ukryty" style="display: none">tresc ukrytego diva</div>";
  3.  
  4.  
  5.  
  6. echo "<input type="button" value="Wczytaj" onClick="document.getElementById('ukryty').style.display='inline';">";
  7. ?>


--------------------
404
Go to the top of the page
+Quote Post
Papub
post 26.01.2007, 13:30:53
Post #5





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 17.02.2006

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


Cały problem polega na tym że chce zrobić aby zawartosć pliku dane.txt załadowała się <textarea>; tresc</textarea>;

i w miejsce tresc dałem skrypt php
  1. <?php
  2. $fp = fopen("dane.txt", "r"); 
  3. $tekst = fread($fp, 1000);
  4.  echo($tekst);
  5.  ?>


tylko nie moge tu dać elementu z htmla z tym niewidocznym divem bo traktuje to jako zwykły tekst który wyświetlany jest w textarea a nie jakieś komendy które mają coś na celu

Ten post edytował Papub 26.01.2007, 13:49:58
Go to the top of the page
+Quote Post
Cienki1980
post 26.01.2007, 13:44:42
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


Ja chyba czegoś nie rozumiem ... chcesz wyświetlić w polu textarea zawartość pliku textowego odczytywanego przez php tak questionmark.gif

Jeżeli tak to w czym masz problem questionmark.gif Można to zrobić w sposób jak pokazałem, bez większych problemów...

No chyba że chodzi o coś innego.

PS. Zacznij w końcu korzystać z BBCode.


--------------------
404
Go to the top of the page
+Quote Post
Papub
post 26.01.2007, 13:56:30
Post #7





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 17.02.2006

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


Patrz jak robie tak
  1. <?php
  2. echo '<textarea>';tresc
  3. echo'</textarea>;
  4. ?>


w tym momencie wyświetli słowo tresc w tym polu

a jak zrobie tak
  1. <?php
  2. echo '<textarea>';
  3. echo '<div id="ukryty" style="display: none">';
  4. $fp = fopen("dane.txt", "r"); 
  5. $tekst = fread($fp, 1000);
  6. echo($tekst);
  7. echo '<textarea>';
  8. ?>



to teog diva czyta mi jak zwykły tekst. Nie czeka az wcisne wczytaj żeby załadowało te dane z zpliku tylko od razu ładuje i to jeszcze oprócz wczytango tekstu pojawia się przed tym
  1. <?php
  2. <div id="ukryty" style="display: none">wczytany tekst</div>
  3. ?>
Go to the top of the page
+Quote Post
Cienki1980
post 26.01.2007, 13:59:32
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


No takie założenie było ( przynajmniej z mojej strony ), że DIV jest już wypełniony treścią, tylko jest ukryty, w momencie jak klikasz na button to DIV się pokazuje.

Jeżeli chcesz, żeby tekst nie był wcześniej wogole widoczny, musisz zrobic to przez przeładowanie strony, lub korzystając z AJAX'a. W momencie przeładowania strony, odczytujesz plik i jego zawartość wyświetlasz w textarea.


--------------------
404
Go to the top of the page
+Quote Post
nospor
post 26.01.2007, 14:01:40
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@Cienki1980 zalozenie miales byc moze sluszne, ale zobacz jak on zrobil: on wklada diva do textarea, a nie na odwrot winksmiley.jpg (pomijam juz totalna sieczke w znacznikach zamykajacych oraz ich brak)

ps: pozatym skoro mamy juz textarea, to mozna olac diva i operacja pokazywanie/ukrywanie robic bezposrednio na textarea

ps2: sorki za wciecie, kontynuujcie smile.gif


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

"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
Cienki1980
post 26.01.2007, 14:07:06
Post #10





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


@nospor : racja biggrin.gif ja spojrzałem na pierwszy kawałek kodu bez znaczników i nie przeglądałem dalej .. myślałem że aż tak źle nie bedzie.

@Papub : mam wrażenie jednak, że chodzi Ci o coś innego niż tylko ukrycie textarea .. to textarea ma być cały czas widoczne, ale dopiero po kliknięciu ma się wypełnić treścią.

Możesz to zrobić na 3 sposoby:
- przeładowanie strony
- AJAX
- lub JS przypisując zawartość pliku do zmiennej JS, po kliknięciu buttona przypisać wartość tej zmiennej do wartości textarea.


--------------------
404
Go to the top of the page
+Quote Post
Papub
post 26.01.2007, 14:30:25
Post #11





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 17.02.2006

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


Dokładnie o to mi chodzi mam pole textarea i trzy buttony zapisz, reset i wczytaj. Jak coś napisze w polu i zrobie zapisz zapisuje mi do pliku z atybutem W czyli zawsze jak coś napisze to poprzednie skasuje. A plik wczytaj ma ładować treść z pliku do pola. Nawet myślałem żeby zrobić nastęne pole textarea na następnej stronie i po naciśnięciu buttonu wczytaj tylko by sie poleciało do tej nastęnej strony, tylko u mnie ten 1 textarea pojawia się gdy wpisze dobrze login i hasło. Gorzej jest jak ktoś w przęglądarce wpisze odrazu link do do tego 2 textarea wpisze sobie coś wyśle mi do pliku. Przecież na tej 2 stronie znowu nie będe robił 2 logowania. Bym musiał mieć skrypcik który by sprawdzał czy na poprzedniej stronie był zalogowany jak nie to wypad
Go to the top of the page
+Quote Post
Cienki1980
post 26.01.2007, 15:03:44
Post #12





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


Logowanie i sprawdzanie czy użytkownik jest zalogowany to osobna kwestia nie raz nie dwa poruszana na forum.

Skoro masz takie założenia i nie chcesz robić w AJAXie .. to albo przeładowanie strony, albo za pomocą JS.

Jeżeli zawartość pliku jest duża to lepiej zrobić to poprzez przeładowanie strony.

Podpinasz pod buttona akcje zatwierdzającą formę jednocześnie ustawiając wartość jakiegoś pola hidden.

W php sprawdzasz wartość tego pola, jeżeli jest odpowiednie to otwierasz plik a zawartość wyświetlasz w textarea.


--------------------
404
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: 15.06.2025 - 07:02