Problem z przesłaniem id do podstrony

0

Mam kod php na stronie głównej index.php z którego chcę pobrać id dla danego produktu, niestety nie ważne który produkt wybiorę na podstronie szczegoly-produktu.php wyświetlają się dane wszystkich produktów z bazy danych.

Kod php z index.php

<?php $sql = "SELECT * FROM produkty"; $result = mysqli_query($conn, $sql); while($row = mysqli_fetch_assoc($result)) { // echo $row['id'] ." ". $row['nazwa_produktu'] ." ". $row['grafika'] ." ". $row['cena']."
"; ?>
			<div class="col-md-3 text-center mt-5">
				
				<a href="szczegoly-produktu.php?id=id"><img src="grafiki/<?php echo $row['grafika']?>" alt=""></a>
				<h3><?php echo $row['nazwa_produktu']?></h3>
				<h6>cena: <?php echo $row['cena']?></h6>
				<div class="form-group">
					<select class="form-control" id="ilosc<?php echo $row['id']?>">
						<option>1</option>
						<option>2</option>
						<option>3</option>
						<option>4</option>
					</select>
					<input type="hidden" id="nazwa_produktu<?php echo $row['id']?>" value='<?php echo $row['nazwa_produktu']?>'>
					<input type="hidden" id="cena<?php echo $row['id']?>" value='<?php echo $row['cena']?>'>
					<button class='btn btn-danger add' data-id="<?php echo $row['id']?>">Do koszyka</button>
				</div>
			</div>

			<?php
			}
			?>

natomiast kod z podstrony szczegoly-produktu.php

<?php $id = $_GET["id"]; $sql = "SELECT * FROM produkty WHERE id=$id"; $result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["opis"]."
"; } } else { echo "0 results"; } ?>

Chciałbym żeby wyświetlał się opis z bazy danych dla produktu o danym id, ale na podstronie wyświetlają się opisy wszystkich produktów naraz. Jakich zmian musze dokonać żeby pobierane id było przypisane dla danego produktu?

2

W tej podstronie oczekujesz klucza 'id' w tablicy $_GET. Popatrz jak w formularzu oznaczasz pola.

I dwa to SQL Injection. Nie twórz tak zapytań. Poczytaj o prepared statemants.

1 użytkowników online, w tym zalogowanych: 0, gości: 1