plaatje uit loop openen in nieuwe pagina
ik heb while loop waarin een tabel met thumbnail-plaatjes staat. Als je op zo'n plaatje klikt, dan opent het plaatje op ware grootte.
Maar ik wil nu dat het plaatje opent in een nieuwe url zodat ik wat meer info erbij kan zetten.
Is dat mogelijk en zo ja hoe doe je dat?
Dank, ik begrijp het niet maar ik ga er even over nadenken, misschien dat ik het morgen of overmorgen wel snap wat hier gebeurt.
Stel je hebt op een bepaalde pagina een thumbnail. Je zet deze in een snelkoppeling zodat je naar een andere pagina gaat als je er op klikt. De html ziet er dan zo uit:
Dan ga je dus naar show.php als je er op klikt. die ziet er dan ongeveer zo uit:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
$id = 0;
if(isset($_GET['id'])) {
$id = intval($_GET['id']);
}
// hier even connectie maken met je database server
$result = mysqli_query($con, 'SELECT * FROM plaatjes WHERE id=' . $id);
if(FALSE === $result) {
throw new Exception('database error ' . $mysqli_error($con));
}
$row = mysqli_fetch_assoc($result);
if(FALSE === $row) {
throw new Exception('Image with id ' . $id . ' not found.');
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Details van plaatje</title>
</head>
<body>
<img src="<?php echo $row['filepath']; ?>">
<p>
<?php echo $row['description']; ?>
</p>
</body>
</html>
$id = 0;
if(isset($_GET['id'])) {
$id = intval($_GET['id']);
}
// hier even connectie maken met je database server
$result = mysqli_query($con, 'SELECT * FROM plaatjes WHERE id=' . $id);
if(FALSE === $result) {
throw new Exception('database error ' . $mysqli_error($con));
}
$row = mysqli_fetch_assoc($result);
if(FALSE === $row) {
throw new Exception('Image with id ' . $id . ' not found.');
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Details van plaatje</title>
</head>
<body>
<img src="<?php echo $row['filepath']; ?>">
<p>
<?php echo $row['description']; ?>
</p>
</body>
</html>
echo "<td><a href=" .$row["Url"] . "><img src=" .$row["Url"] . " width='100' height='75' /></a></td>";
vs
<a href="show.php?id=4527"><img src="/images/thumb_4527.jpg"></a>
En wat is de uiteindelijke HTML die er uit jouw echo komt?
Code (php)
Zowel de afbeelding als alle info over die afbeelding is opgeslagen in een mysql database.
In een webpagina ziet het er dan zo uit :
- Ariën - op 11/10/2016 00:31:54:
En wat is de uiteindelijke HTML die er uit jouw echo komt?
Code (php)
1
<td><a href=/dir/map/nummer_naamvanhetplaatje.jpg><img src=/dir/map/nummer_naamvanhetplaatje.jpg width='100' height='75' /></a></td>
Gewijzigd op 13/10/2016 00:03:02 door marina janssen
Ten tweede, als je het plaatje met info wil tonen, link naar een pagina met dat plaatje.
Zie mijn voorbeeld.
Je kan het haast zelf bedenken.
Gewijzigd op 12/10/2016 21:57:10 door Adoptive Solution
Adoptive Solution op 12/10/2016 21:56:40:
Ten eerste, zet de link van de href en src tussen aanhalingstekens.
ik keek net nog een keer, had het niet eens gezien maar view-source geeft het echt precies zo zonder aanhalingstekens.
Gewijzigd op 13/10/2016 00:06:26 door marina janssen
Marina janssen op 11/10/2016 00:19:13:
Het klinkt heel makkelijk, en logisch. Maar mijn output is variabel.
echo "<td><a href=" .$row["Url"] . "><img src=" .$row["Url"] . " width='100' height='75' /></a></td>";
vs
<a href="show.php?id=4527"><img src="/images/thumb_4527.jpg"></a>
echo "<td><a href=" .$row["Url"] . "><img src=" .$row["Url"] . " width='100' height='75' /></a></td>";
vs
<a href="show.php?id=4527"><img src="/images/thumb_4527.jpg"></a>
Pas $row['id'] aan zodat het het id uit de database bevat.
Code (php)
1
2
3
2
3
<?php
echo '<td><a href="show.php?id='.$row['id'].'"><img src="'.$row['Url'].'"></a></td>';
?>
echo '<td><a href="show.php?id='.$row['id'].'"><img src="'.$row['Url'].'"></a></td>';
?>
Weer wat geleerd.
Dank allen.