Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] wstawianie danych z formularza.
Forum PHP.pl > Forum > Przedszkole
robert-0627
Więc zrobiłem sobie formularz : radiobutton 1 radiobutton 2 wyślij form action do jakiegoś tam pliku jest .No i jakaś tam opcja pod radiobutton 1 jest i kiedy wysyłam to wszystko dobrze działa.Tylko że ja chcę kiedy klikne na submit to to co powinno się wyświetlić ma się wyświetlić w tabeli.Jak to zrobić ?
I jeszcze żeby taka informacja np. kasowała mi się sama po określonym czasie.
Ociu
  1. <?php
  2. echo $_POST['nazwa_inputa'];
  3. ?>
robert-0627
W sumie to chyba nie o to mi chodzi .BO jak klikam SUBMIT który nazywa się np wyślij to mi się pokazuje tam co zaznaczyłem .Jak zaznaczyłem np pierwsze to się pokazuje ZAGRAM 10 minut ważne ogłoszenie.I ja chcę żeby ten tekst pokazywał mi się w tabeli która znajduje się w DIVie. .
Cienki1980
Na forum jeszcze wróżki nie spotkałem i sam nie jestem wróżbitą.

Pokaż trochę kodu, jak odczytujesz zmienne, jak je wyświetlasz, gdzie masz tę tabelę w DIVIE.
robert-0627
Formularz
  1. <form method="POST" action="zagram.php">
  2. <input type="submit" name="wyslij" value="ZAGRAM"></a>
  3. <input name="radiobutton" type="radio" value="10 MINUT WAŻNE OGŁOSZENIE">10 MINUT
  4. <input name="radiobutton" type="radio" value="20 MINUT WAŻNE OGŁOSZENIE">20 MINUT
  5. </form>

DIV
  1. #prawa {
  2. position: absolute;
  3. width: 180px;
  4. height: 650px;
  5. top: 204px;
  6. left: 1007px;
  7. border: solid;
  8. border-width: medium;
  9. border-color: rgb(255,0,0);
  10. background: rgb(128,0,0);
  11. }


Tabela w której ma sie pokazywać.

  1. <DIV id="prawa" >
  2.  
  3. <table border="4" cellspacing="1" style="border-collapse: collapse" bordercolor="#111111"
  4.  
  5. width="100%" id="AutoNumber1">
  6. <tr>
  7. <td width="10"><b>
  8. </td>
  9. </tr>


To co się ma wyświetlać w tabeli powyżej.

  1. ZAGRAM
  2. <?php
  3. echo $_POST['radiobutton'];
  4. ?>
Cienki1980
  1. <?php
  2. ?>
  3. <DIV id="prawa" >
  4.  
  5. <table border="4" cellspacing="1" style="border-collapse: collapse" bordercolor="#111111"
  6.  
  7. width="100%" id="AutoNumber1">
  8. <tr>
  9. <td width="10"><b><?php echo $_POST['radiobutton']; ?>
  10. </td>
  11. </tr>
  12. </table>
  13. <?php
  14. ?>


Zapisujesz plik jako *.php i banglać powinno
robert-0627
  1. <form method="POST" action="zagram.php">
  2. <input type="submit" name="wyslij" value="ZAGRAM"></a>
  3. <input name="radiobutton" type="radio" value="10 MINUT WAŻNE OGŁOSZENIE">10 MINUT
  4. <input name="radiobutton" type="radio" value="20 MINUT WAŻNE OGŁOSZENIE">20 MINUT
  5. </form>


Czy ja mam coś zmienić w "action"?Bo jakoś mi tego nie wczytuje do tej tabeli tylko poprostu otwiera sie plik .Chcę żeby to poniższe pokazywało się w tamtej tabeli.Coś nie mogę do tego dojść.
  1. ZAGRAM
  2. <?php
  3. echo $_POST['radiobutton'];
  4. ?>
Cienki1980
No to jeszcze napisz w jakim pliku masz formularz, w jakim pliku masz tabelę w której chcesz to wyświetlić
robert-0627
FORMULARZ jest w pliku index.php tak samo jak i tabela.Gdy zaznaczam na formularzu jakąś opcje i klikam wyśli j chcę żeby pojawiało się to obok w tej tabeli .
Cienki1980
No to musisz zrobić
  1. <form action="index.php" method="post">


I wyświetlić dane w tabeli tak jak to jest kilka postów wyżej.
robert-0627
Dzięki jesteś wielki!!!!!!Tylko jeszcze 2 w sumie nie problemy ale jednak.Chcę żeby to "ogłoszenie " samo sie usuwało po jakimś czasie.I gdy klikne wyślij pare razy to nie żeby jedno zastępowało 2 tylko żeby ciągle sie nowe pojawiały.
Cienki1980
Musisz zapisywać kolejne "głosowania" albo do pliku albo do bazy danych. Zapisywać je jednocześnie z datą/godziną głosowania ( np używając funkcji time() )

Potem przy każdym wejściu na stronę sprawdzasz czy są wpisy, które są już nieaktualne ( porównujesz czas zapisania z czasem aktualnym ) i jeżeli nie mieszczą się w ustawionym zakresie czasowym usuwasz je z pliku/bazy danych a resztę pobierasz i wyświetlasz.
robert-0627
Tylko pojawia się problem czytałem jak zapisać dane z formualrza i jest tak :
  1. <form method="POST" action="zapis.php">
  2. <p><input name="dane"></p>
  3. <p><input type="submit" value="Wyślij" name="send"></p>
  4. </form>


Plik zapis.php:
  1. <?php 
  2.  
  3. //z formularza, zmienna dane o ktorej wspominalem 
  4. $dane = $_POST['dane']; 
  5.  
  6. // przypisanie zmniennej $file nazwy pliku 
  7. $file = "baza.txt"; 
  8.  
  9. // uchwyt pliku, otwarcie do dopisania 
  10. $fp = fopen($file, "a"); 
  11.  
  12. // blokada pliku do zapisu 
  13. flock($fp, 2); 
  14.  
  15. // zapisanie nickow do pliku i dodanie spacji 
  16. fwrite($fp, $dane . '  '); 
  17.  
  18. // odblokowanie pliku 
  19. flock($fp, 3); 
  20.  
  21. // zamknięcie pliku, to juz koniec skryptu 
  22. fclose($fp); 
  23. ?>


Tutaj normalnie to to ładnie działa tylko że w moim formularzu ja mam form action"index.php" a muszę mieć "zapis.php".A jak to przestawie to nie będzie mi się pokazywalo w tej tabel ico chcę.;/
Cienki1980
No to ten kod do zapisywania do pliku wstaw też do index.php ... potem napisz kod wyciągania z pliku tych wartości i wyświetlenie ich w tabeli .. wszystko w pliku index.php.
robert-0627
DObra już dizała.

A jak zrobić żeby powstawała też od razu nowa tebela do wpisania łącznie z tym kiedy wcisne "submit"?
Neojawor
chodzi o to, żeby każde "ogłoszenie" było w nowym rekordzie?
Robisz to na pętli. Zakładamy, że twoje "ogłoszenia" masz już wyciągnięte z pliku i wpakowane w tablicę "$ogloszenia", gdzie kluczem jest liczba całkowita, a wartością Twoje ogłoszenie

robimy tak:
  1. ?>
  2. <table>
  3. <tr><td></td><td>czas grania:</td>
  4. <?php
  5. $il_rek = count ($ogloszenia);
  6. for ($i=0; $i <$il_rek; $i++)
  7. {
  8.  echo "<tr><td>zagram:</td><td>$ogloszenia[$i] minet";
  9. }
  10. ?>
  11. </table>
  12. <?php
  13. ?>


pisałem z palca, więc mogą być błędy
robert-0627
Za każdym razem kiedy klikne "wyslij" w tabeli pojawia się tam to co chcę.No i chcę żeby to co się pojawia za każdym razem kiedy klikne pojaiwało się w nowej kolumnie rekordzie czy jak to tam się nazywa.Zaraz sprawdzę powyższą metodę.
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.