image width / size in php
Code (php)
1) Ik wil echter dat mijn jpg's kleiner op het scherm worden getoond. Hoe kan ik met width / height werken ?
2) Kan ik in $dirname een variable inbouwen zodat ik via een knop of dergelijke op de pagina kan kiezen tss 2012 en 2011 ? Zodat ik ofwel
$dirname="images/2012" ofwel $dirname="images/2011" krijg?
dus zoiets als $dirname="images/" & keuzejaar
Mvg,
Luc
echo "<img src='images/2012/$curimg' width='100px' height='100px' /><br>\n";
of als je CSS gebruikt
echo "<img class='small_img' src='images/2012/$curimg' /><br>\n";
En zet dan in je css
.small_img {
height: 100px;
width: 100px;
}
P.S. Verander uiteraard de 100px naar de groote die je wil.
Nog een advies, wissel je quotes om. Dus enkel ' voor echo's en dubbel " voor HTML
Gewijzigd op 12/11/2012 12:15:07 door Chris PHP
CSS:
Code (php)
1
2
3
2
3
.afbeelding { width: 200px; }
ul { list-style: none; }
ul li { display: inline-block; }
ul { list-style: none; }
ul li { display: inline-block; }
PHP:
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
32
33
34
35
36
37
38
39
40
41
42
43
44
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
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
//Hoofd map
$dir = 'images/';
//Alle mappen verzamelen
$files = glob($dir . "*");
foreach($files as $file){
if(is_dir($file)){
$dirs[] = $file;
}
}
//Geldig jaar in de url?
if($_GET['jaar']){
if(in_array($_GET['jaar'],$dirs)){
$jaar = $_GET['jaar'];
} else {
echo 'Geen geldig jaar opgegeven!';
exit;
}
}
//Map = hoofdmap + jaar
if($jaar){
$dir .= $jaar.'/';
$files = glob($dir . "*");
}
//Afbeeldingen uit de map weergeven
foreach($files as $file){
echo '<ul>';
if(!is_dir($file)){
echo '<li><img src="'.$dir.$file.'" class="afbeelding" alt=""></li>';
}
echo '</ul>';
}
//Menu met jaren
echo '<ul>';
foreach($dirs as $dir){
echo '<li><a href="script.php?jaar='.$dir.'">'.$dir.'</a></li>';
}
echo '</ul>';
?>
//Hoofd map
$dir = 'images/';
//Alle mappen verzamelen
$files = glob($dir . "*");
foreach($files as $file){
if(is_dir($file)){
$dirs[] = $file;
}
}
//Geldig jaar in de url?
if($_GET['jaar']){
if(in_array($_GET['jaar'],$dirs)){
$jaar = $_GET['jaar'];
} else {
echo 'Geen geldig jaar opgegeven!';
exit;
}
}
//Map = hoofdmap + jaar
if($jaar){
$dir .= $jaar.'/';
$files = glob($dir . "*");
}
//Afbeeldingen uit de map weergeven
foreach($files as $file){
echo '<ul>';
if(!is_dir($file)){
echo '<li><img src="'.$dir.$file.'" class="afbeelding" alt=""></li>';
}
echo '</ul>';
}
//Menu met jaren
echo '<ul>';
foreach($dirs as $dir){
echo '<li><a href="script.php?jaar='.$dir.'">'.$dir.'</a></li>';
}
echo '</ul>';
?>
Bovenstaande krijg ik idd de images/2012 en 2013, maar als ik klik komt er niets tevoorschijn ? Wat doe ik verkeerd ? Heb php gewijzigd naar mijn paginanaam.
Gewijzigd op 12/11/2012 12:48:39 door Luc Baetsle
Code (php)
Of als je het ze echt zelf wil laten invoeren
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
//Menu met jaren
echo '<form method="get" action="">
<input type="text" name="jaar" placeholder="Jaar..." />
<input type="submit" value="Kies!" />
</form>';
?>
//Menu met jaren
echo '<form method="get" action="">
<input type="text" name="jaar" placeholder="Jaar..." />
<input type="submit" value="Kies!" />
</form>';
?>
En als je klik komt er niets tevoorschijn? Als je waarop klikt?
Gewijzigd op 12/11/2012 16:53:47 door Roy -
Code (php)
Kan je beter gewoon DIRONLY gebruiken:
Zie http://nl3.php.net/glob
En als je dan toch gelijk dat jaartal erin wilt:
Code (php)
1
2
3
4
2
3
4
<?php
//Alle mappen verzamelen in het juiste jaar
$dirs = glob($dir . "*".$_GET['jaar']."*", DIRONLY);
?>
//Alle mappen verzamelen in het juiste jaar
$dirs = glob($dir . "*".$_GET['jaar']."*", DIRONLY);
?>
En als ik jouw stuk dan pak:
Quote:
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
//Alle mappen verzamelen
$files = glob($dir . "*");
foreach($files as $file){
if(is_dir($file)){
$dirs[] = $file;
}
}
//Geldig jaar in de url?
if($_GET['jaar']){
if(in_array($_GET['jaar'],$dirs)){
$jaar = $_GET['jaar'];
} else {
echo 'Geen geldig jaar opgegeven!';
exit;
}
}
//Map = hoofdmap + jaar
if($jaar){
$dir .= $jaar.'/';
$files = glob($dir . "*");
}
?>
//Alle mappen verzamelen
$files = glob($dir . "*");
foreach($files as $file){
if(is_dir($file)){
$dirs[] = $file;
}
}
//Geldig jaar in de url?
if($_GET['jaar']){
if(in_array($_GET['jaar'],$dirs)){
$jaar = $_GET['jaar'];
} else {
echo 'Geen geldig jaar opgegeven!';
exit;
}
}
//Map = hoofdmap + jaar
if($jaar){
$dir .= $jaar.'/';
$files = glob($dir . "*");
}
?>
Kan dat dus dit worden:
Code (php)
1
2
3
4
2
3
4
<?php
//Alle mappen verzamelen in het juiste jaar
$files = glob($dir.$_GET['jaar']."/*"); // moet mapnaam wel exact overeenkomen
?>
//Alle mappen verzamelen in het juiste jaar
$files = glob($dir.$_GET['jaar']."/*"); // moet mapnaam wel exact overeenkomen
?>
Gewijzigd op 12/11/2012 19:54:53 door Eddy E