• 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
283 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 (288,330 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ź 219 wizyt
pytanie zadane 8 lutego 2018 w PHP przez Bartek Pydynkowski Początkujący (320 p.)
0 głosów
1 odpowiedź 724 wizyt
pytanie zadane 3 kwietnia 2017 w PHP przez Gaspar Nowicjusz (240 p.)
0 głosów
2 odpowiedzi 187 wizyt
pytanie zadane 4 maja 2016 w PHP przez Kuba Skoneczny Obywatel (1,780 p.)

92,757 zapytań

141,679 odpowiedzi

320,437 komentarzy

62,101 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

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!

...