Afbeelding komt niet in zijn map

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Donny Wie weet

Donny Wie weet

14/05/2013 21:17:12
Quote Anchor link
Hoi allemaal,

Ik heb een upload script en loop tegen een raar probleem aan. Hij plaatst de image wel in een thumb map, maar niet in de originele map waar ik em et liefst wil. Enig idee hoe dit kan?
Code heb ik al eens eerder gebruikt en werkte het fantastisch!
Volle code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<?php

// Upload map
    $UploadMap = $_SERVER['DOCUMENT_ROOT'] . '/latin2/images/gallery/';
    $FotoNaam = '';
    $Bericht = array ();
    // Toegestane extenties
    $FotoExt = array('.jpg', '.jpeg', '.gif', '.png');
    $FotoMIME = array ('image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'image/gif');
    // Maximale grote
    $MaxFotoSize = 5000000;
    // Thumbnail grote
    $ThumbSize = 90;
echo '
<fieldset class="fieldset_cfg"><legend>Nieuwe foto</legend>
<form action="index.php?page=admin&act=pictures" method="post" enctype="multipart/form-data">
<label for="name" class="label_cfg">Foto naam:</label> <input type="text" name="picture_title" class="input_cfg" id="name">
<label for="date" class="label_cfg">Datum:</label> <input type="text" name="datum" class="input_cfg" id="date">
<label for="upload" class="label_cfg">Kies je afbeelding:</label> <input type="file" name="afbeelding" id="file" class="input_cfg" id="upload">
<input type="submit" value="Toevoegen" name="add_image" class="input_cfg"></fieldset>
'
;
        
if (isset($_POST['add_image'])){    
    //Standaarden:
    $Foto = $_FILES['afbeelding'];
    $FotoNaam = $Foto['name'];
echo 'stap 1';

    if (isset($_FILES['afbeelding']))
    {

         //Als de query enige resultaten bevat
echo 'stap3';

            switch ($Foto['error'])
            {
                case
UPLOAD_ERR_OK:
                    // Controle voor afbeeldings grote
                    if ($Foto['size'] > $MaxFotoSize)
                    {

                        $Bericht[] = 'De foto is te groot. Hij mag niet groter zijn dan <b>' .$MaxFotoSize. '</b>';
                    }


                    if(@!getimagesize($_FILES['afbeelding']['tmp_name']))
                    {

                        $Bericht[] = 'Deze foto heeft geen breedte of hoogte';
                    }

                    break;

                    case
UPLOAD_ERR_INI_SIZE:
                        $Bericht[] = 'De foto is te groot.';
                    break;

                    case
UPLOAD_ERR_PARTIAL:
                        $Bericht[] = 'Er is een fout opgetreden tijdens het uploaden';
                    break;

                    case
UPLOAD_ERR_NO_FILE:
                        $Bericht[] = 'U heeft geen foto opgegeven om te uploaden';
                    break;

                    default:

                        $Bericht[] = 'Er is een onbekende fout opgetreden';
                    break;
                }
// Einde switch

            if (empty($Bericht))
            {

                if (!in_array($Foto['type'], $FotoMIME ))
                {

                    $Bericht[] = 'Deze extensie is niet toegestaan!';
                }


            // Extensie controleren
                if(!in_array(strtolower(strrchr($_FILES['afbeelding']['name'], '.')), $FotoExt))
                {

                    $Bericht[] = ' Deze foto extentie is niet toegestaan';
                }


            // Already excist check                
                if (file_exists($FotoNaam))
                {

                    $Bericht[] = 'Er bestaat al een foto met deze naam!';
                }


                if (!move_uploaded_file ($Foto['tmp_name'] , $FotoNaam))
                {
                      
                    echo "Fout met de afbeelding. Kon deze niet toevoegen!";                                                                
                }


                    list ($Breedte, $Hoogte, $ImageType) = getimagesize ($FotoNaam);
                    $ImageRatio = $Breedte / $Hoogte;

                    if ($ImageRatio > 1)
                    {
                          
                    $TnBreedte = $ThumbSize;
                    $TnHoogte = $ThumbSize / $ImageRatio;                        
                    }

                    else
                    {                          
                    $TnHoogte = $ThumbSize;
                    $TnBreedte = $ThumbSize * $ImageRatio;                          
                    }


                    $Thumb = imagecreatetruecolor ($TnBreedte, $TnHoogte);

                    switch ($ImageType)
                    {

                    case
IMAGETYPE_GIF:                        
                    $Source = imagecreatefromgif ($FotoNaam);        
                    break;

                    case
IMAGETYPE_JPEG:                        
                    $Source = imagecreatefromjpeg ($FotoNaam);                          
                    break;

                    case
IMAGETYPE_PNG:                      
                    $Source = imagecreatefrompng ($FotoNaam);                          
                    break;

                    default:
                      
                    $Source = imagecreatefromgif ($FotoNaam);                      
                    break;

                    }


                        imagecopyresampled ($Thumb, $Source, 0, 0, 0, 0, $TnBreedte, $TnHoogte, $Breedte, $Hoogte);

                    // Naam thumb                    
                    $Thumbname = $UploadMap . './thumbnails/' . 'tn_' . $_FILES['afbeelding']['name'];

                    switch ($ImageType)
                    {                  
                        case
IMAGETYPE_GIF:                    
                            imagegif ($Thumb, $Thumbname);                
                        break;

                        case
IMAGETYPE_JPEG:                    
                            imagejpeg ($Thumb, $Thumbname, 100);
                        break;                    
                        case
IMAGETYPE_PNG:                    
                            imagepng ($Thumb, $Thumbname);                        
                        break;
                    }
        

                    $Bericht[]  = 'Uw foto is succesvol opgeslagen in het fotoalbum!';      
            }        
    }

//Sluiten van file submit
}


//Else afsluiten voor veldcontrole

                            
?>



Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    foreach($Bericht AS $melding){
        echo '<br />Dit gebeurde er: '.$melding.'<br />';
    }

if (isset($sql_no_image)) {
         echo $sql_no_image;
}





echo '<hr> Bepaalde waarden echoEn:</br>';
?>
 
PHP hulp

PHP hulp

03/05/2024 23:44:08
 
Donny Wie weet

Donny Wie weet

16/05/2013 07:32:01
Quote Anchor link
Hoi allemaal,

Even een bump. Probleem is nog niet helemaal opgelost. Echter weet ik wel dat mijn afbeelding in de root van mn webserver komt te staan, en dus geen locatie meekrijgt waar hij moet komen.

Groeten Donny
 
Milo S

Milo S

16/05/2013 08:34:31
Quote Anchor link
Op regel 110 tot 122 staan ook geen map mee gegeven aan de fotonaam. Dus komt hij ook nooit daar terecht. Dat is wel gedaan bij de thumbnails.
Als je dit veranderd moet je dat ook meteen in je checks doen... Ander check je of er een afbeelding al is in een verkeerde map.
Dit kun je zelf ook uitzoeken door te kijken welke variabelen er nu meegegeven worden en welke niet. Slechts een kwestie van goed kijken...
 
Donny Wie weet

Donny Wie weet

16/05/2013 10:17:41
Quote Anchor link
Milo dat snap ik. Ik snap alleen niet hoe het kan als ik precies dezelfde pagina in precies dezelfde CMS plaatst hij het niet doet... Dat vond ik gwn erg raar...
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.