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

Problem ze zmienną po wysłaniu formularza wewnątrz pliku

Object Storage Arubacloud
0 głosów
116 wizyt
pytanie zadane 3 czerwca 2016 w PHP przez fmc Początkujący (260 p.)

Dzień dobry!
Ma problem ze zmieną, którą wykorzystuję do określenia początkowej pozycji w formularzu. Na początku, jeżeli zmienna ($b) nie istnieje ustawiam domyślną wartość formularz (p1). Potem z listy wybieram to co mnie interesuje np. p2 lub p3 i wysyłam zapytanie do bazy. Z bazy pobieram wyniki i do zmiennej $b przypisuję nową wartość. W tym momencie w okienku formularza powinna wyświetlać mi się wartość z tej zmiennej ($b). Niestety nadal wyświetla mi się wartość p1. Dodam jeszcze, że jak sprawdzam na końcu wartość zmiennej to wyświetla mi się prawidłowa, oczekiwana wartość. Nie mogę dojść, gdzie popełniam błąd. Czy w którymś miejscu $b resetuje mi się poprzez fakt, że formularz jest wysyłany wewnętrznie?

Poniżej kod:

 

<?php
	if(isset($b))
	{
		$idkomentarze=$b;
	}
	else
	{
		$idkomentarze="p1";
	}
?>

<form action="" method="post">

	<h1>Formularz aktualizacji komentarzy</h1>
	
	<select style="width: 100px" name="idkomentarze">
		<option value="<?php echo $idkomentarze; ?>"><?php echo $idkomentarze; ?></option>
		<option value="p1">p1</option>
		<option value="p2">p2</option>
		<option value="p3">p3</option>
	</select>
	
	<input type="submit" value="Pobierz komentarz" />
	
</form>

<?php
	
	$idkomentarze = $_POST['idkomentarze'];
	
	require_once "connect.php";

	$polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);
	
	if ($polaczenie->connect_errno!=0)
	{
		echo "Error: ".$polaczenie->connect_errno;
	}
	else
	{
	$wynik = @$polaczenie->query("SELECT `idkomentarze`, `komentarz`  FROM `komentarze` WHERE `idkomentarze`= '$idkomentarze'");
	
	$ile = $wynik->num_rows;
			
		for ($i = 0; $i < $ile; $i++)
		{
		
		$wiersz = $wynik->fetch_assoc();
		
		$a = $wiersz['komentarz'];
		$b = $wiersz['idkomentarze'];
		
		}
		
	$wynik->free_result();
	
	$polaczenie->close();	
	}
	
?>

Z góry dziękuję za pomoc.

Pozdrawiam

Filip.

1 odpowiedź

+1 głos
odpowiedź 8 czerwca 2016 przez Gerard Szymański Obywatel (1,520 p.)
wybrane 8 czerwca 2016 przez fmc
 
Najlepsza
A czy zamiast if(isset($b)) nie powinno być if(isset($_POST['idkomentarze']))?
komentarz 8 czerwca 2016 przez fmc Początkujący (260 p.)
Dziękuję. Pomogło.

Pozdrawiam

Podobne pytania

0 głosów
1 odpowiedź 310 wizyt
pytanie zadane 9 maja 2018 w PHP przez KoruS Obywatel (1,630 p.)
+2 głosów
2 odpowiedzi 614 wizyt
pytanie zadane 3 lipca 2021 w JavaScript przez magic84 Nowicjusz (140 p.)
0 głosów
1 odpowiedź 191 wizyt
pytanie zadane 29 marca 2020 w PHP przez zOne Początkujący (270 p.)

92,576 zapytań

141,426 odpowiedzi

319,651 komentarzy

61,961 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!

...