Hallo allemaal,
Ik ben bezig om een foto die geüpload word te rezisen zodat hij op de website op de juiste manier getoond word.
Hiervoor gebruik ik het volgende script:
Echter krijg ik het hiermee niet werkend en word de afbeelding niet gerezised.
Ik heb al verschillende manier geprobeerd met het aanroepen van de file die geupload word etc, echter blijkt niets te werken en weet ik niet wat ik fout doe.
Een ding waar ik onder andere over twijfel is of ik dit wel goed doe:
Ik heb het idee dat de tweede beter is, maar daarbij krijg ik een foto melding.
De eerste werkt wel maar op dit moment krijg ik telkens de error dat de bestandsnaam al in gebruik is.
De volgende error dus:
Als ik dan in de map kijk waar het geüpload hoort te worden zie ik geen foto's staan.
Iemand nog enig idee wat ik hieraan zou kunnen doen?
Iemand enig idee wat ik fout doe en hoe ik dit kan oplossen?
Ik hoor het graag, bij voorbaat dank!
Ik ben bezig om een foto die geüpload word te rezisen zodat hij op de website op de juiste manier getoond word.
Hiervoor gebruik ik het volgende script:
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
| <?php $errors = array( ); ini_set( 'display_errors', 1 ); error_reporting( E_ALL ); echo "<form action='admin.php' method='post' enctype='multipart/form-data' /> <p><input type='file' name='foto' value='' size='30' /></p> <p><label>Korte beschrijving:</label><br> <input type='text' name='alt' class='field' value='' /></p> <p><label>Project naam:</label><br> <input type='text' name='project' class='field' value='' /></p> <input type='hidden' name='formtype' value='uploadfile' /> <p><input type='submit' name='submit_top' class='uploaden' value='Uploaden' /></p> </form>"; $UploadMap = 'images/projecten/'; $FotoNaam = ''; $MaxFotoSize = 5000000; $FotoExt = array('.jpg', '.jpeg', '.gif', '.png'); $FotoMIME = array ('image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'image/gif'); if (isset($_POST['submit_top']) && isset($_POST['formtype'])) { if (!isset($_FILES['foto']['name'])) { echo "<p class='error'>Geen foto geselecteerd.. <span class='close'>X</span></p>"; } elseif (empty($_POST['alt'])) { echo "<p class='error'>Er moet een beschrijving ingevuld worden! <span class='close'>X</span></p>"; } elseif (empty($_POST['project'])) { echo "<p class='error'>Er moet een project naam ingevuld worden! <span class='close'>X</span></p>"; } else { $Foto = $_FILES['foto']['tmp_name']; $FotoNaam = $UploadMap . $Foto['name']; //$FotoNaam = $UploadMap . $_FILES['name']; if (file_exists($FotoNaam)) { echo "<p class='error'>Er bestaat al een foto met deze naam! <span class='close'>X</span></p>"; } else { $width = 466; $height = 140; list($width_orig, $height_orig) = getimagesize($Foto); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($Foto['tmp_name']); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); imagejpeg($image_p, $FotoNaam, 100); $alt = empty($_POST['alt']) ? die ("") : mysql_real_escape_string($_POST['alt']); $project = empty($_POST['project']) ? die ("") : mysql_real_escape_string($_POST['project']); $p_query = "INSERT INTO top (src, title, alt) VALUES ('$FotoNaam', '$project', '$alt')"; $p_result = mysql_query($p_query) or die ("<p class='error'>Error in query: $p_query.<span class='close'>X</span></p>".mysql_error()); echo "<p class='update'>De gekozen foto is geupload en toegevoegd aan de website! <span class='close'>X</span></p>"; } } } ?> |
Echter krijg ik het hiermee niet werkend en word de afbeelding niet gerezised.
Ik heb al verschillende manier geprobeerd met het aanroepen van de file die geupload word etc, echter blijkt niets te werken en weet ik niet wat ik fout doe.
Een ding waar ik onder andere over twijfel is of ik dit wel goed doe:
PHP:
1
2
| $FotoNaam = $UploadMap . $Foto['name']; //$FotoNaam = $UploadMap . $_FILES['name']; |
Ik heb het idee dat de tweede beter is, maar daarbij krijg ik een foto melding.
De eerste werkt wel maar op dit moment krijg ik telkens de error dat de bestandsnaam al in gebruik is.
De volgende error dus:
PHP:
1
2
3
| if (file_exists($FotoNaam)) { echo "<p class='error'>Er bestaat al een foto met deze naam! <span class='close'>X</span></p>"; } |
Als ik dan in de map kijk waar het geüpload hoort te worden zie ik geen foto's staan.
Iemand nog enig idee wat ik hieraan zou kunnen doen?
Iemand enig idee wat ik fout doe en hoe ik dit kan oplossen?
Ik hoor het graag, bij voorbaat dank!