foto's uit database tonen
Dus het wordt:
Code (php)
1
2
3
2
3
<?php
echo "<td><a href ='http://www.XXXXXX.nl/fotoboek.php'><img src='http://www.XXXXXX.nl/Uploads/".$foto."' width='150' height='150' /></td></a>";
?>
echo "<td><a href ='http://www.XXXXXX.nl/fotoboek.php'><img src='http://www.XXXXXX.nl/Uploads/".$foto."' width='150' height='150' /></td></a>";
?>
Maar zoals SanThe al zei, dit kan je beter in CSS doen, en de hoogte in een class of ID bepalen, zodat het e.v.t. voor meerdere images kan gelden.
- Aar - op 18/11/2014 00:22:08:
Huh, de px-suffix gebruik je alleen in CSS, niet in HTML:
Zo zie je maar weer.
Ik gebruik het zelf dus nooit op die manier.
Alleen vraag ik mij nog af hoe ik de verschillende bestandsnamen kan opslaan in de database als ik drie foto's tegelijk upload
Dan wil ik graag drie verschillende bestandsnamen van die foto's opslaan.
Ik sla nu namelijk $name op als bestandsnaam in de DB. maar dat is dan van 1 foto. en ik heb ze natuurlijk alle 3 nodig.
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
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
<?php
$name = ($_FILES["files"]["name"]);
$type = ($_FILES["files"]["type"]);
$size = ($_FILES["files"]["size"]);
$tmp_name = ($_FILES["files"]["tmp_name"]);
$valid_formats = array("JPG","jpg", "png", "gif", "zip", "bmp");
$path = 'Uploads/'; // Upload directory
$count = 0;
if($_SERVER['REQUEST_METHOD'] == "POST")
{
// Loop $_FILES to execute all files
foreach ($_FILES['files']['name'] as $f => $name)
{
if ($_FILES['files']['error'][$f] == 4)
{
continue; // Skip file if any error found
}
if ($_FILES['files']['error'][$f] == 0)
{
if( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) )
{
echo "$name is not a valid format";
continue; // Skip invalid file formats
}
else
{ // No error found! Move uploaded files
if(move_uploaded_file($_FILES["files"]["tmp_name"][$f], $path.$name))
$count++; // Number of successfully uploaded file
}
}
}
}
?>
$name = ($_FILES["files"]["name"]);
$type = ($_FILES["files"]["type"]);
$size = ($_FILES["files"]["size"]);
$tmp_name = ($_FILES["files"]["tmp_name"]);
$valid_formats = array("JPG","jpg", "png", "gif", "zip", "bmp");
$path = 'Uploads/'; // Upload directory
$count = 0;
if($_SERVER['REQUEST_METHOD'] == "POST")
{
// Loop $_FILES to execute all files
foreach ($_FILES['files']['name'] as $f => $name)
{
if ($_FILES['files']['error'][$f] == 4)
{
continue; // Skip file if any error found
}
if ($_FILES['files']['error'][$f] == 0)
{
if( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) )
{
echo "$name is not a valid format";
continue; // Skip invalid file formats
}
else
{ // No error found! Move uploaded files
if(move_uploaded_file($_FILES["files"]["tmp_name"][$f], $path.$name))
$count++; // Number of successfully uploaded file
}
}
}
}
?>
Wouter ga eerst eens de foutmeldingen aanzetten. Want het script dat je nu wederom vertoond geeft zeker meldingen terug. (regel 3 tm 6)
Dat staat aan dit is namelijk niet het hele script
In dat geval kan je de namen uit $name steeds opslaan in een array.
Boven je foreach() van lijn 16 zet je neer:
Dan heb je de array geinitialiseerd.
Vervolgens gaan we na lijn 31, steeds de geuploadde bestandsnaam opslaan in de array:
Dan heb je uiteindelijk een array in $filenames met alle bestandsnamen van de geuploadde bestanden.
maar die gegevens zitten nu een array, hoe kan ik er nou voor zorgen dat ik die gegevens daar weer uithaal zodat ik drie verschillende variabelen kan maken voor een insert statement ??
Als je serieus met PHP (of welke taal dan ook eigenlijk) aan de slag wilt dan moet je zeker goed overweg kunnen met arrays: http://www.phptuts.nl/view/39/6/
Error reporting gaat gegarandeerd aan met:
Gewijzigd op 18/11/2014 17:06:29 door Frank Nietbelangrijk
Dus je kan de derde foto met $filenames[2]; ook echo'en.
Toevoeging op 19/11/2014 19:46:20:
Ik heb nog een vraag mbt dit topic.
Ik zou graag ook nog wat restricties toe willen voegen aan mijn uploadscript. filetype & filesize.
Nomraal zou ik dit kunnen doen met bijvoorbeeld.
Code (php)
Maar dit kan nu niet omdat de gegevens een array staan omdat er meerdere foto's tegelijk ge-upload worden.
hoe zou ik dit kunnen doen zodat alle foto's gecontroleerd worden op type en size ?
Heeft iemand hier een voorbeeldje van of een goede tip ?.