Gegevens directory naar database
Op welke wijze kan ik dat het beste doen?
scandir.
Vergeet . en .. in je foreach niet uit te sluiten.
Voor de rest kan je explode gebruiken op de punt. Met array_pop kan je dan de extensie er afhalen, zoals je ook een foto met bijv. als naam dit.is.een.foto.jpg netjes kan opslaan.
Kijk eens naar Vergeet . en .. in je foreach niet uit te sluiten.
Voor de rest kan je explode gebruiken op de punt. Met array_pop kan je dan de extensie er afhalen, zoals je ook een foto met bijv. als naam dit.is.een.foto.jpg netjes kan opslaan.
Gewijzigd op 28/05/2021 20:02:59 door - Ariën -
Vervolgens wat puzzelen.
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
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
<?php
$path = 'lotje/';
// bestanden worden alfabetisch gelezen. In tegenstelling tot dir()
if ( $files = scandir( $path ) )
{
$extensions = array( 'jpg', 'jpeg', 'png', 'gif' );
foreach ( $files as $image )
{
$path_parts = pathinfo( $path . $image );
if( in_array( $path_parts['extension'] , $extensions ) )
{
echo 'dirname = ' . $path_parts['dirname'] . "<br />\n";
echo 'basename = ' . $path_parts['basename'] . "<br />\n";
echo 'extension = ' . $path_parts['extension'] . "<br />\n";
echo 'filename = ' . $path_parts['filename'] . "<br />\n";
$imageMime = image_type_to_mime_type(exif_imagetype( $path . $image ) );
echo 'imageMime = ' . $imageMime . "<br />\n";
// als je ook de afmetingen wilt bewaren
list( $width, $height, $type, $attr ) = getimagesize( $path . $image );
echo '<p>w:' . $width . ' h:' . $height . ' t:' . $type . ' a:' . $attr . '</p>';
// add to db
$query = "INSERT INTO afbeeldingen ( naam, extensie, mimetype )
VALUES ('" . $path_parts['filename'] . "', '" . $path_parts['extension'] . "', '" . $imageMime . "');";
echo '<p>' . $query . '</p>';
}
}
}
?>
$path = 'lotje/';
// bestanden worden alfabetisch gelezen. In tegenstelling tot dir()
if ( $files = scandir( $path ) )
{
$extensions = array( 'jpg', 'jpeg', 'png', 'gif' );
foreach ( $files as $image )
{
$path_parts = pathinfo( $path . $image );
if( in_array( $path_parts['extension'] , $extensions ) )
{
echo 'dirname = ' . $path_parts['dirname'] . "<br />\n";
echo 'basename = ' . $path_parts['basename'] . "<br />\n";
echo 'extension = ' . $path_parts['extension'] . "<br />\n";
echo 'filename = ' . $path_parts['filename'] . "<br />\n";
$imageMime = image_type_to_mime_type(exif_imagetype( $path . $image ) );
echo 'imageMime = ' . $imageMime . "<br />\n";
// als je ook de afmetingen wilt bewaren
list( $width, $height, $type, $attr ) = getimagesize( $path . $image );
echo '<p>w:' . $width . ' h:' . $height . ' t:' . $type . ' a:' . $attr . '</p>';
// add to db
$query = "INSERT INTO afbeeldingen ( naam, extensie, mimetype )
VALUES ('" . $path_parts['filename'] . "', '" . $path_parts['extension'] . "', '" . $imageMime . "');";
echo '<p>' . $query . '</p>';
}
}
}
?>
Toevoeging op 28/05/2021 21:06:33:
Toch wel raar dat je het vraagt, want dit topic heeft zo’n beetje alle ingredienten.
https://www.phphulp.nl/php/forum/topic/fotos-worden-niet-getoond/102640/#102640