• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Problem PHP Post

Object Storage Arubacloud
0 głosów
273 wizyt
pytanie zadane 28 stycznia 2019 w PHP przez zerakot Obywatel (1,870 p.)

Witam,

Mam problem z przekazywaniem wartości zmiennych metodą POST. HTML wysyła odpowiednie informacje, PHP je odbiera i zapisuje(tak jak powinno być), ale na ekranie są komunikaty

Notice: Undefined index: tytol in C:\xampp\htdocs\cda\ulubione.php on line 54
Notice: Undefined index: select in C:\xampp\htdocs\cda\ulubione.php on line 55

Dodam też, że skrypt działa.

<div id="glowna">
		<div id="panel">
		<form action="#" method="post">
			Tytół: <input type="text" name="tytol" /><br />
			Ocena: <select name="select">
				<option value="✮">✮</option>
				<option value="✮✮">✮✮</option>
				<option value="✮✮✮">✮✮✮</option>
				<option value="✮✮✮✮">✮✮✮✮</option>
				<option value="✮✮✮✮✮">✮✮✮✮✮</option>
			</select>
			<input type="submit" value="Dodaj" action="#" />
		</form>
		</div>
		</div>
		
		<?php
		$plik = fopen("ulubione.txt", 'a');
		$tytol = $_POST['tytol'];
		$gwiazdki = $_POST['select'];
		$wynik = $tytol." ".$gwiazdki;
		fwrite($plik, $wynik, 999);
		fclose($plik);
		?>

 

komentarz 28 stycznia 2019 przez zerakot Obywatel (1,870 p.)
Dziękuję za wszystkie odpowiedzi. Udało się

3 odpowiedzi

0 głosów
odpowiedź 28 stycznia 2019 przez niezalogowany
pokaż mi ulubione.php linijka 0-70;
0 głosów
odpowiedź 28 stycznia 2019 przez Arkadiusz Waluk Ekspert (287,950 p.)
Pomyśl: w momencie wejścia na stronę nie masz wartości $_POST['tytol'] i $_POST['select'] a próbujesz je odczytać. Należałoby więc sprawdzić czy one są, bądź w inny sposób sprawdzić czy formularz został wysłany, i dopiero odczytywać oraz robić kolejne akcje z nimi.
0 głosów
odpowiedź 28 stycznia 2019 przez michh123 Bywalec (2,790 p.)

To chyba dlatego, że kod jest wykonywany od początku, przetwarzany jest HTML, a potem od razu PHP. 
W każdym bądź razie kod PHP zamknij w instrukcji warunkowej: 

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
            $plik = fopen("ulubione.txt", 'a');
            $tytol = $_POST['tytol'];
            $gwiazdki = $_POST['select'];
            $wynik = $tytol." ".$gwiazdki;
            fwrite($plik, $wynik, 999);
            fclose($plik);
 }

Wtedy kod PHP zostanie przetworzony w momencie submita. 

Podobne pytania

0 głosów
1 odpowiedź 180 wizyt
pytanie zadane 8 lutego 2018 w PHP przez Bartek Pydynkowski Początkujący (320 p.)
0 głosów
1 odpowiedź 670 wizyt
pytanie zadane 3 kwietnia 2017 w PHP przez Gaspar Nowicjusz (240 p.)
0 głosów
2 odpowiedzi 177 wizyt
pytanie zadane 4 maja 2016 w PHP przez Kuba Skoneczny Obywatel (1,780 p.)

92,539 zapytań

141,382 odpowiedzi

319,477 komentarzy

61,928 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...