Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [HTML][PHP] Odnoszenie się do formularza w php, Odnoszenie się do formularza w php
Martitaa
post 20.05.2020, 13:54:42
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
nospor
post 20.05.2020, 13:56:22
Post #2





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 20.05.2020, 14:18:39
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 20.05.2020, 14:22:28
Post #4





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 20.05.2020, 14:39:48
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 20.05.2020, 14:45:12
Post #6





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 20.05.2020, 16:03:57
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 20.05.2020, 16:08:58
Post #8





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 20.05.2020, 16:28:55
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 20.05.2020, 16:41:10
Post #10





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 20.05.2020, 16:56:48
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 20.05.2020, 17:02:57
Post #12





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 20.05.2020, 17:14:41
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 20.05.2020, 17:18:59
Post #14





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
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 20.05.2020, 17:32:05
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 20.05.2020, 17:36:11
Post #16





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
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 20.05.2020, 18:00:43
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 20.05.2020, 19:05:34
Post #18





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
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 21.05.2020, 10:14:11
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 21.05.2020, 10:23:19
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

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 Wersja Lo-Fi Aktualny czas: 19.04.2024 - 13:46