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

Problem PHP Post

Aruba Cloud - Virtual Private Server VPS
0 głosów
326 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 (290,090 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ź 278 wizyt
pytanie zadane 8 lutego 2018 w PHP przez Bartek Pydynkowski Początkujący (320 p.)
0 głosów
1 odpowiedź 948 wizyt
pytanie zadane 3 kwietnia 2017 w PHP przez Gaspar Nowicjusz (240 p.)
0 głosów
2 odpowiedzi 226 wizyt
pytanie zadane 4 maja 2016 w PHP przez Kuba Skoneczny Obywatel (1,780 p.)

93,336 zapytań

142,332 odpowiedzi

322,418 komentarzy

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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...