Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP] Odnoszenie się do formularza w php, Odnoszenie się do formularza w php
Martitaa
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Nie wiem jak się odnosi do formularza proszę o poprawienie błędu i wytłumaczenie.
Pokazuje błąd tutaj $dzien = date('N', strtotime($_POST['data']));
  1. <form action="tydzien.php" method="post">
  2. <label for="dzień">Dzień:</label>
  3. <select name="dzien">
  4. <?php
  5. for ($i=1;$i<=31;++$i)
  6.  
  7. echo '<option value="'.$i.'">'.$i.'</option>';
  8. ?>
  9. </select> </br></br>
  10. <label for="miesiac">Miesiąc:</label>
  11. <select name="miesiac">
  12. <?php
  13. for($l=1;$l<=12;++$l)
  14. echo '<option value="'.$l.'">'.$l.'</option>';
  15. ?>
  16. </select></br></br>
  17. <label for="rok">Rok:</label>
  18. <select name="rok">
  19. <?php
  20. for($t=1900;$t<=2010;++$t)
  21. echo '<option value="'.$t.'">'.$t.'</option>';
  22. ?>
  23. </select> </br>
  24. </br></br><input type="submit" name="sprawdz" value="Sprawdź dzień tygodnia" />
  25. </br></br><input type="reset" name="reset" value="Wyczyść" />
  26. </form>


  1. <?php
  2. $dzien = date('N', strtotime($_POST['data']));
  3. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  4.  
  5. echo $dni_tygodnia[$dzien-1];
  6. ?>
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 24)
nospor
post
Post #2





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




No przeciez nie masz juz pola o nazwie 'data'. Zamienilas go na 3 selecty, pamietasz?


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

"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
Martitaa
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Jeszcze mam gdzieś błąd ale nie wiem gdzie.
  1. <?php
  2. $dzien = .$i.('N', strtotime($_POST['dzien']));
  3. $dzien = .$l.('N', strtotime($_POST['miesiac']));
  4. $dzien = .$t.('N', strtotime($_POST['rok']));
  5. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  6.  
  7. echo $dni_tygodnia[$dzien-1];
  8. ?>


I tak próbowałam i nic
  1. <?php
  2. $dzien = dzien('N', strtotime($_POST['dzien']));
  3. $dzien = miesiac('N', strtotime($_POST['miesiac']));
  4. $dzien = rok('N', strtotime($_POST['rok']));
  5. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  6.  
  7. echo $dni_tygodnia[$dzien-1];
  8. ?>


Proszę o wytłumaczenie i poprawienie błędu.
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




Cytat
I tak próbowałam i nic

$dzien = dzien('N', strtotime($_POST['dzien']));



O, bardzo ciekawe podejscie do tematu. Nie wiedzialem ze tak mozna, sprobuj wiec tego, moze zadziala


  1. $wynik = zrob_sie_samo($formularz);

Jak sie bawic, to na calego smile.gif

Jesli zas zdecydujesz podejsc powaznie do tematu, to przypomnij sobie co zawierala $_POST['data'], w jakim formacie a potem zastanow sie czemu strtotime($_POST['dzien']) nie ma prawa dzialac. Manual php, do ktorego juz cie odsylalem, bedzie bardzo pomocny


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

"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
Martitaa
post
Post #5





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Przeczytałam ale nic z tego nie rozumiem. Proszę o wytłumaczenie
Go to the top of the page
+Quote Post
nospor
post
Post #6





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




W skrocie:
do strtotime() masz przekazywac date, np 2020-05-20
W pierwszej wersji skryptu, gdzie mialas jedno pole z data, mialas taki kod

strtotime('2020-05-20')

Teraz zas masz
strtotime('20')
strtotime('05')
strtotime('2020')

Znajdz 10 roznic wink.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
Martitaa
post
Post #7





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


O to chodzi? Tylko nie mam zielonego pojęcia co wstawić zamiast date.
  1. <?php
  2. $dzien = date('N', strtotime($_POST['dzien']));
  3. $miesiac = date('N', strtotime($_POST['miesiac']));
  4. $rok = date('N', strtotime($_POST['rok']));
  5. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  6.  
  7. echo $dni_tygodnia[$dzien-1];
  8. ?>


Proszę o wytłumaczenie bo nie mam zielonego pojęcia o co chodzi przy select . Przy input rozumiem już np.
<input type="text" name="pole_1" />
$tekst_1=$_POST['pole_1'];

Błagam wytłumacz mi to bo nigdy do tego nie dojde.

nospor błagam wytłumacz mi
Go to the top of the page
+Quote Post
nospor
post
Post #8





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




Tlumaczylem, postac do jakiej masz dazyc to:

2020-05-20

Teraz masz
20
05
2020

A ty zamiast dazyc wiec do 2020-05-20 ty nadal piszesz kod ktory pracuje z
20
05
2020
Masz miec jedno strtotime() a ty nadal tworzysz 3 strtotime dla kazdej skladowej oddzielnie


To po co ja mam cos tlumaczyc jak ty i tak swoje dalej robisz?


Pomysl, co nalezy zrobic by z wartosci
20
05
2020

uzyskac jeden tekst w postaci: 2020-05-20
?


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

"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
Martitaa
post
Post #9





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Nic nie mogę wymyśleć . Robie to tak jak rozumiem. Nie mam zielonego pojęcia jak to połączyć. Ja już nic nie wymyśle. Nie rozumiem tego jak to się robi. Nie wiem jak połączyć.
TYlko to wymyśliłam
  1. <?php
  2. $dzien = date('N', strtotime($_POST['rok; miesiac; dzien']));
  3. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  4.  
  5. echo $dni_tygodnia[$dzien-1];
  6. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #10





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




https://www.php.net/manual/en/language.operators.string.php
zapoznaj sie z podanymi tak przykladami jak laczyc rozne zmienne/wartosci ze soba w jeden ciag


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

"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
Martitaa
post
Post #11





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Jeszcze wyskakuje błąd . Nie wiem co jest źle. Przeczytałam z teko linku co mi przesłałeś.
Wszyszło mi coś takiego

  1. <?php
  2. $rok.$miesiac.$dzien = date('N', strtotime($_POST['rok; miesiac; dzien']));
  3. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  4.  
  5. echo $dni_tygodnia[$dzien-1];
  6. ?>

Go to the top of the page
+Quote Post
nospor
post
Post #12





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




Ile razy mam powtarzac. Do strtotime() masz wlozyc date w postaci 2020-05-20 a co za tym idzie to tam masz laczyc wartosci z POSTa


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

"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
Martitaa
post
Post #13





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Przepraszam źle zrozumiałam.
Zrobiłam tak jak mówiłeś ale nadal mam błąd

  1. <?php
  2. $dzien = date('N', strtotime($_POST['$rok.$miesiac.$dzien']));
  3. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  4.  
  5. echo $dni_tygodnia[$dzien-1];
  6. ?>
Go to the top of the page
+Quote Post
viking
post
Post #14





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Zacznij od podstaw Temat: Jak poprawnie zadac pytanie oraz przygotowac srodowisko pracy
Włącz wszystkie błędy. Wróć jak php nie będzie wyświetlał żadnego.


--------------------
Go to the top of the page
+Quote Post
Martitaa
post
Post #15





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Cytat(viking @ 20.05.2020, 18:18:59 ) *
Zacznij od podstaw Temat: Jak poprawnie zadac pytanie oraz przygotowac srodowisko pracy
Włącz wszystkie błędy. Wróć jak php nie będzie wyświetlał żadnego.

Nie potrafie sama się nauczyć i potrzebuje pomocy.

Mam bardzo dobrze przygotowane środowisko pracy.

Błąd Notice: Undefined index: $rok.$miesiac.$dzien in C:\xampp\htdocs\Data\tydzien.php on line 30 to jest $dzien = date('N', strtotime($_POST['$rok.$miesiac.$dzien']));

Proszę o wytłumaczenie
Go to the top of the page
+Quote Post
viking
post
Post #16





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


A naprawdę tak ciężko samemu poszukać? Indeks w tablicy ma zgadzać się z name w formularzu. Nospor kilka razy napisał co masz zrobić a zamiast pomyśleć i poszukać strzelasz w kodzie losowymi znakami.


--------------------
Go to the top of the page
+Quote Post
Martitaa
post
Post #17





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Cytat(viking @ 20.05.2020, 18:36:11 ) *
A naprawdę tak ciężko samemu poszukać? Indeks w tablicy ma zgadzać się z name w formularzu. Nospor kilka razy napisał co masz zrobić a zamiast pomyśleć i poszukać strzelasz w kodzie losowymi znakami.

Szukam od 7.00 rana i nic nie znalazłam. Nie strzelam losowo tylko pisze kod tak jak rozumiem polecenie od Nospor. Myśle i nic nie mogę wymyśleć.

Błagam pokażcie mi dokładnie gdzie mam błąd.
Go to the top of the page
+Quote Post
nospor
post
Post #18





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




Twoje dane pochodza z formularza wiec tam ich masz szukac....
Dane z forma sa w $_POST a twoim przypadki konkretnie w

$_POST['dzien']
$_POST['miesiac']
$_POST['rok']

To z tych danych masz ulozyc 2020-05-20

I powtarzam: 2020-05-20
a nie: 20200520 co probujesz teraz caly czas zrobic


To sa podstawy podstaw. Zamiast brac sie za pisanie skryptow, przelec w pierw od deski do deski jakikolwiek kurs php dla poczatkujacych bo programowanie nie polega na losowym skladaniu literek co ty przez wiekszosc tego tematu robisz.


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

"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
Martitaa
post
Post #19





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


uczyłam się z kursu php tylko nie rozumiem tego dlatego wole uczyć się na przykładach
Ktoś na innym forum napisał mi $date = $_POST['dzien'] . '-' . $_POST['miesiac'] . '-' . $_POST['rok']

Teraz mi błąd nie wyskakuje, ale jak wybiore z formularza dzień 19, miesiąc 6 i rok 1983 i kliknę w przycisk sprawdź to nie pokazuje mi się Niedziela tylko nic się nie pokazuje.
Gdzie jest błąd?
  1.  
  2. $date = $_POST['dzien'] . '-' . $_POST['miesiac'] . '-' . $_POST['rok']
  3. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  4.  
  5. echo $dni_tygodnia[$date];
  6.  


Nadal proszę o pomoc i nalegam. Jak mam to zrobić skoro nie rozumiem jak to się robi?
Zależy mi na tym żeby nauczyć się php. Kurs php który przerobiłam i manual php nier ozumiem. Już 20 lat szukam pracy i nikt nie chce mnie przyjąć bo nie mam doświadczenia, bo nie mam szkoły wyższej, bo jestem niepełnosprawna z chorymi nogami.
Błagam pomóż mi się tego nauczyć.
Błagam pokaż mi gdzie mam błąd teraz.

  1. <?php
  2.  
  3. $date = $_POST['dzien'] . '-' . $_POST['miesiac'] . '-' . $_POST['rok']
  4. $dzien = $date->format('w')
  5. $dni_tygodnia = array('', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela'); = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela');
  6. echo $dni_tygodnia[$dzien];
  7.  
  8.  
  9. ?>
  10.  
Go to the top of the page
+Quote Post
Lord
post
Post #20





Grupa: Zarejestrowani
Postów: 239
Pomógł: 32
Dołączył: 10.03.2004

Ostrzeżenie: (10%)
X----


  1. $_POST['dzien'] //tu masz numer dnia prawdopodobnie
  2. $dni_tygodnia = array('Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota','Niedziela'); // ta tablica jest numerowana od 0, czyli poniedziałek ma index 0, wtorek 1 itd
  3. echo $dni_tygodnia[2]; //wyświetli ci środę
  4. echo $dni_tygodnia[$_POST['dzien']]; //wyświetla dzień na podstawie liczby jaką przechowuje $_POST['dzien']


Ten post edytował Lord 21.05.2020, 10:25:31
Go to the top of the page
+Quote Post
nospor
post
Post #21





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




Cytat
$_POST['dzien'] //tu masz numer dnia prawdopodobnie

Nie, ona tam ma dzien miesiaca a nei dzien tygodnia. Jak juz chcesz pomoc to czytaj temat dokladnie wink.gif


@maritaa ty w ogole nie myslisz nad tym co robisz. Temu pomaganie tobie to zadna przyjemnosc bo pomaganie tobie to napisanie za ciebie gotowca. Jaki tego sens?

Mialas juz w pierwszym poscie tego tematu poprawny kod do pobrania tego co chcesz. Jedyny problem to rozbilas pole z data na 3 pola. I jedyne co mialas zrobic to w oryginalnym kodzie co mialas, zamiast $_POST['data'] mialas wstawic date zlozona z twoich 3 pol o ktorych ci juz pisalem .A ty co? Mimo ze podalismy ci juz wszystkie niezbedne informacje, ty tylko nadal radosnie klepiesz bez zadnego namyslu w te klawiature, ot by tylko poklepac.

Nawet nie potrafisz zrozumiec ze jak ci mowie ze ma byc 2020-05-20 to ty i tak robisz odwrotnie 20-05-2020.... Przeciez ja po polsku ci to napisalem a nie po chinsku....


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

"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
Martitaa
post
Post #22





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Rozbiłam na 3 pola bo chcę nauczyć się napisać kod php do pierwszej opcji i do drugiej opcji.

Do pierwszej opcji już wiem jak napisać a do drugiej opcji nie wiem. Poza tym formularz mój ma najpierw dzień potem miesiąc i potem rok i ma się tylko wyświetlić dzień tygodnia. Data ma być Polska a nie Angielska.

Do strtotime() masz wlozyc date w postaci 2020-05-20 o to chodzi?
  1. $dzien = date('N', strtotime($_POST['rok'] . '-' . $_POST['miesiąc'] . '-' . $_POST['dzień']));
  2.  

Go to the top of the page
+Quote Post
nospor
post
Post #23





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




Cytat
Poza tym formularz mój ma najpierw dzień potem miesiąc i potem rok

No i co z tego jaka jest kolejnosc w formularzu? Potem w php mozesz sobei to obrabiac jak ci sie zywnie podoba



$dzien = date('N', strtotime($_POST['rok'] . '-' . $_POST['miesiąc'] . '-' . $_POST['dzień']));
Tak, wlasnie o to chodzilo


Cytat
. Data ma być Polska a nie Angielska.
Ty juz chyba sama nie wiesz co mowisz... Jaka data. Zdaje sie ze interesuje cie dzien tygodnia docelowo, tak? No to masz robic tak, by dojsc do dnia tygodnia. Jak bedziesz chciala sobie potem wyswietlic date, to sobie wyswietlaj w jakim formacie ci sie podoba. Mozesz nawert po chinsku wyswietlic.


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

"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
Martitaa
post
Post #24





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.05.2020
Skąd: Warszawa

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


Już ktoś z innego forum powiedział mi jak to zrobić. Teraz rozumiem już o co chodzi.
Ja ucze się na przykładach. Jakbym miała podobne zadanie to bym już umiała zrobić.
Go to the top of the page
+Quote Post
nospor
post
Post #25





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




Cytat
Ja ucze się na przykładach. Jakbym miała podobne zadanie to bym już umiała zrobić.

Czyli w praktyce sie nie uczysz w ogole. Bo jestes w stanie zrobic tylko i wylacznie podobne kawalki. A zadan do zrobienia jest nieskonczonosc. nie jeestes w stanie nauczyc sie wszyskich zadan.

Ale twoja decyzja.


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

"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

2 Stron V   1 2 >
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 - 10:49