Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Formularz i wyświetlenie strony o danym numerze
Soojeh
post 28.03.2015, 20:23:50
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 28.03.2015

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


Witam Państwa serdecznie. Jestem początkującym programistą. Pragnę pochłonić więdzę jak mając formularz wpisać numer np. 1234 i kliknąć Szukaj, żeby przejść do strony zawartej na serwerze 1234.php i na tej stronie wyświetlono 1234 lub jeśli nie ma takiego numeru wyświetlić komunikat Brak danego numeru. Czy mógłby ktoś podać mi kod przykładowego formularza oraz pozostałość? Pozdrawiam i z góry dziękuję serdecznie.

Ten post edytował Soojeh 28.03.2015, 20:25:04
Go to the top of the page
+Quote Post
johny_s
post 28.03.2015, 20:32:16
Post #2





Grupa: Zarejestrowani
Postów: 594
Pomógł: 122
Dołączył: 17.07.2005
Skąd: P-na

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


Cytat(Soojeh @ 28.03.2015, 20:23:50 ) *
Witam Państwa serdecznie. Jestem początkującym programistą. Pragnę pochłonić więdzę jak mając formularz wpisać numer np. 1234 i kliknąć Szukaj, żeby przejść do strony zawartej na serwerze 1234.php i na tej stronie wyświetlono 1234 lub jeśli nie ma takiego numeru wyświetlić komunikat Brak danego numeru. Czy mógłby ktoś podać mi kod przykładowego formularza oraz pozostałość? Pozdrawiam i z góry dziękuję serdecznie.

Z gotowców się nie nauczysz, lepiej samemu pokombinować
Go to the top of the page
+Quote Post
kafowi
post 28.03.2015, 20:33:40
Post #3





Grupa: Zarejestrowani
Postów: 75
Pomógł: 20
Dołączył: 13.02.2015

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


Nie ma w tym filozofii. Zwykły formularz, pobierasz z niego wartość inputa i sprawdzasz
- http://php.net/manual/pl/function.file-exists.php
czy plik o danej nazwie istnieje. Jeżeli tak to robisz na niego przekierowanie, jeżeli nie to
echo "Nie ma takiego numeru";
Go to the top of the page
+Quote Post
com
post 28.03.2015, 20:38:33
Post #4





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

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


Pomijając, że to rozwiązanie jest bardzo złe(ogólnie sama idea) to dokładnie tak jak kolega napisał powyżej smile.gif
Go to the top of the page
+Quote Post
Soojeh
post 28.03.2015, 20:46:58
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 28.03.2015

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


Jeśli Ci prócz osoby która pomogła (wiadomo kto), ma coś jeszcze do skomentowania? Przecież to "Przedszkole". Jeśli zna ktoś lepszy sposób proszę się wykazać. Może niektóre osoby potrafią się uczyć z "gotowców". Proszę o dalsze propozycje.
Go to the top of the page
+Quote Post
kafowi
post 29.03.2015, 11:04:27
Post #6





Grupa: Zarejestrowani
Postów: 75
Pomógł: 20
Dołączył: 13.02.2015

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


Po kontakcie na PW, bez walidacji.

  1. /// INDEX.html
  2. <!doctype html>
  3. <meta charset="utf-8">
  4. <title>Index</title>
  5. </head>
  6.  
  7. <form method="post" name="przeslij" action="1234.php">
  8. <label>Wprowadź wartość</label>
  9. <input type="text" name="wartosc">
  10. <br>
  11. <input type="submit" value="Klik">
  12. </form>
  13. </body>
  14. </html>
  15.  


  1. /// 1234.php
  2. <!doctype html>
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <title>Wyświetlenie wyniku</title>
  7. </head>
  8.  
  9. <body>
  10. <?php
  11. echo $_POST["wartosc"];
  12. ?>
  13. </body>
  14. </html>

W drugim kodzie wcześniej przy użyciu warunków sprawdzasz czy dany numer istnieje.

Ten post edytował kafowi 29.03.2015, 11:06:12
Go to the top of the page
+Quote Post
Soojeh
post 29.03.2015, 11:11:22
Post #7





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 28.03.2015

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


kafowi z góry Ci bardzo dziękuję jesteś bardzo pomocny, a propo tego formularza w index.html, nie chciałbym żeby formularz przygotowany był konkretnie pod 1234.php tylko chciałbym żeby w action odczytał z tego pola co wpisuje 1234 i zeby przeszlo pod 1234.php lub mozna wpisac 555 w formularzu i zeby przeszedl pod 555.php lub wyswietlil komunikat nie znaleziono podanego numeru w index.html. Lepiej by było gdyby wyglądło to taką metodą, że przechodzi po wpisaniu na index.php?numer=1234 i na tym sie opierało. Za pomoc mogę się odpłacić. Pozdrawiam i czekam na rozwiązanie smile.gif
Go to the top of the page
+Quote Post
kafowi
post 29.03.2015, 13:34:07
Post #8





Grupa: Zarejestrowani
Postów: 75
Pomógł: 20
Dołączył: 13.02.2015

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


Sprecyzuj do czego ci to, bo odnoszę wrażenie, że w jednym pliku można to zrobić.

  1. <?php
  2. if($_GET['numer'] == 997)
  3. {
  4. echo $_GET['numer'];
  5. }
  6. else
  7. {
  8. echo "Nie ma takiego numeru";
  9. }
  10. ?>
  11. <!doctype html>
  12. <meta charset="utf-8">
  13. <title>Index</title>
  14. </head>
  15.  
  16. <form method="get" name="formularz1" action="index.php">
  17. <label>Wprowadź wartość</label>
  18. <input type="text" name="numer">
  19. <br>
  20. <input type="submit" value="Kliknij">
  21. </form>
  22. </body>
  23. </html>
Go to the top of the page
+Quote Post
Soojeh
post 29.03.2015, 18:38:32
Post #9





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 28.03.2015

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


kafowi, jeszcze nie o to mi chodzi. Powiem tak chciałbym, żeby to wyglądało w pliku index.php formularz do wpisania numeru np 1234 i przycisk sprawdz i ma odnalezc na serwerze strone 1234.php i ma pod nią przejść tylko w formie index.php?numer=1234 wyswietlic tam w tym pliku "Nr 1234 jest przypisany do Osoba" a jeśli nie znajdzie strony 1234.php czyli 1234 to żeby w index.php wyświetliło, że brak takiego numeru. Czy mógłby ktoś naszkicować na szybko jakiś gotowiec? Pozdrawiam Soojeh
Go to the top of the page
+Quote Post
Raito
post 29.03.2015, 18:47:47
Post #10





Grupa: Zarejestrowani
Postów: 156
Pomógł: 19
Dołączył: 27.04.2014

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


Pisane na szybko, bez sprawdzania danych:
  1. <form action="" method="GET">
  2. <input type="text" name="numer">
  3. <input type="submit">
  4. </form>
  5.  
  6. if(isset($_GET["numer"])){
  7. $nazwa_pliku = $_GET["numer"].".php";
  8. if(file_exists($nazwa_pliku)){
  9. $plik = fopen($nazwa_pliku,"r");
  10. while(!(feof($plik))){
  11. echo fgets($plik,255);
  12. }
  13. fclose($plik);
  14. }else{
  15. echo "Brak takiego numeru.";
  16. }
  17. }
Go to the top of the page
+Quote Post
com
post 29.03.2015, 22:50:16
Post #11





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

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


Temat: PHPsekcje w php
Bliźniaczy temat i rozwiązanie smile.gif

@up to już sztuka dla sztuki biggrin.gif
Go to the top of the page
+Quote Post
Soojeh
post 30.03.2015, 08:23:35
Post #12





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 28.03.2015

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


Ekstra sprawa smile.gif jeszcze mały smaczek co do tego, chciałbym żeby to opiarało się na sesjach (chyba tak to się nazywa), jak po wpisaniu w formularzu przejdzie pod podany numer a on istnieje to ok, po jakimś czasie jak wpisze w oknie przegladarki index.php?numer=1234 to wyswietli się komunikat "Sesja wygasła, wpisz ponownie numer w formularzu". Czy istnieje również jakieś ograniczenie czasowe, żeby można było to ustawić? Dziękuje bardzo smile.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 Wersja Lo-Fi Aktualny czas: 13.06.2025 - 10:15