Hi,

Als totale PHP noob werk ik al weken aan een website waarbij het volgende moet gebeuren:

Eerste html file ("overzicht.php")
Bevat verschillende images in divs die individuele projecten representeren.
Als je op een bepaalde image (project) klikt, opent de tweede html

Tweede html file ("items.php")
Hierin staan de projecten in detail uitgelegd in eigen divs. Enkel de div wordt getoond die gelinkt is aan de thumbnail uit het overzicht van de eerste html (waarop werd geklikt.)

Heb al allerlei dingen geprobeerd, maar krijg dit niet aan de praat als de inhoud in een andere html staat. Kan iemand helpen? Hartstikke bedankt!
Heb je een voorbeeld tot nu toe, en wat relevante code (+/- 30 regels)
Je moet een waarde aan items.php meegeven zodat deze kan weten welk project getoond moet worden. Ik neem even aan dat de details uit een database komen. Dan heeft elk record in de tabel als het goed is ook een uniek ID.
Dit id kun je hier goed voor gebruiken.

Het simpelste is om dit te doen in de overzicht.php:


<?
// 1. maak connectie met de database
$conn = mysqli_connnect('host_naam', 'my_username', 'my_password', 'database_naam');
if($conn === false) {
	echo 'geen verbinding met database: ' . mysqli_connect_error();
	exit;
}

// 2. haal alle rijen op uit de tabel bijvoorbeeld:
$result = mysqli_query($conn, "SELECT * FROM projects");
if(!$result) {
	echo 'er gaat iets fout: ' . mysqli_error($conn);
	exit;
}

while($row = mysqli_fetch_assoc($result)) {
	echo '<a href="items.php?id="' . $row['id'] . '"><img src="/images/'.$row['filename'].'"></a>';
}
?>


en dan in items.php:

<?
// 1. Kijk of we een $_GET['id'] hebben
if(isset($_GET['id']) === false) {
	echo 'geen id opgegeven!';
	exit;
}

// 2. maak connectie met de database
$conn = mysqli_connnect('host_naam', 'my_username', 'my_password', 'database_naam');
if($conn === false) {
	echo 'geen verbinding met database: ' . mysqli_connect_error();
	exit;
}

// 3. kijk of we in de database een record hebben voor dit id
$result = mysqli_query($conn, "SELECT * FROM projects WHERE id=" . intval($_GET['id']));
if(!$result) {
	echo 'er gaat iets fout: ' . mysqli_error($conn);
	exit;
}

// 4. kijk of er ook een record gevonden is
if(mysqli_num_rows($result) == 0) {
	echo 'id ' . $_GET['id'] . ' bestaat niet!';
	exit;
}

// 5.  Toon de details
$row = mysqli_fetch_assoc($result);

echo 'id: ' . $row['id'] . '<br>';
echo 'filename: ' . $row['filename'] . '<br>';
// etc
?>


we roepen items.php dus op met een GET variabele. Bijvoorbeeld

http://mijnsite.nl/items.php?id=123

Reageren