Scipt slaats niets op in de database, rest werkt wel.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Arthur Heijmen

Arthur Heijmen

10/04/2013 15:16:30
Quote Anchor link
Ik ben voor op mijn site gothmaster , bezig met het maken van een foto upload script.
Het script slaat de foto, en de thumb goed op, en ook het hernoemen van het bestand werkt goed.
Maar zodra de gegevens in de database moeten worden gezet, doet het script dit niet.
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
<?php


include ('config.php');
//------------------------------------------------------------------start invoer controllen
    function inzender($inzender) {
        if(empty($inzender)) {
            error('Je heb geen naam ingevuld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }
    }
    
    function
email($email) {
        if(empty($email)) {
            error('Je heb geen email ingevuld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }

    
    
          if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $_POST['email'])) {
          error('Je heb geen geldig email ingevuld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
          }
        }
          
    function
plaats_foto($plaats_foto) {
        if(empty($plaats_foto)) {
            error('Je heb geen plaats van de foto ingevuld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }
    }
    
    function
naam_object($naam_object) {
        if(empty($naam_object)) {
            error('Je heb geen naam van de afbeelding ingevuld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }
    }
    
    function
text_foto($text_foto) {
        if(empty($text_foto)) {
            error('Je heb geen tekst ingevuld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }
    }
      
    function
error($error, $exit = true) {
        echo $error;
        
        if($exit) {
            exit;
        }
    }

//------------------------------------------------------------------einde invoer controllen

if(isset($_POST['Submit']))

{

         inzender($_POST['inzender']);
         email($_POST['email']);
         plaats_foto($_POST['plaats_foto']);
         naam_object($_POST['naam_object']);
         text_foto($_POST['text_foto']);
          
    $size = 150; // de thumbnail hoogte

    $filedir = 'album/'; // de root voor de foto
    $thumbdir = 'album/thumb/'; // de root voor de thumb foto
    $prefix = 'k_'; // het voorvoegsel dat moet worden toegevoegd voor de thumb

    $maxfile = '2000000';
    $mode = '0666';
    
    $userfile_name = $_FILES['image']['name'];
    $userfile_tmp = $_FILES['image']['tmp_name'];
    $userfile_size = $_FILES['image']['size'];
    $userfile_type = $_FILES['image']['type'];
    
    if (isset($_FILES['image']['name']))
    {

        //Start naam hernoemen
        $date = date('H-i-s-d-m-Y');
              
        $i = $date;  
        $ext = '.jpg';
          
        while(true) {
            if(!file_exists($i . $ext)) {
                $userfile_name = $i . $ext;            
                break;
            }

                
            $i++;
        }

        //Eind naam hernoemen
        
        $prod_img = $filedir.$userfile_name;

        $prod_img_thumb = $thumbdir.$prefix.$userfile_name;
        $img_thumb = $prefix.$userfile_name;
        move_uploaded_file($userfile_tmp, $prod_img);
        chmod ($prod_img, octdec($mode));
        
        $sizes = getimagesize($prod_img);

        $aspect_ratio = $sizes[1]/$sizes[0];

        if ($sizes[1] <= $size)
        {

            $new_width = $sizes[0];
            $new_height = $sizes[1];
        }
else{
            $new_height = $size;
            $new_width = abs($new_height/$aspect_ratio);
        }

        

        $destimg=ImageCreateTrueColor($new_width,$new_height)
            or die('Probleem bij het creëren van beeld.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        $srcimg=ImageCreateFromJPEG($prod_img)
            or die('Probleem Bij de opening Bron afbeelding.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        if(function_exists('imagecopyresampled'))
        {

            imagecopyresampled($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg))
            or die('Probleem In resizing.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }
else{
            Imagecopyresized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg))
            or die('Probleem In resizing.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        }

        ImageJPEG($destimg,$prod_img_thumb,90)
            or die('Probleem bij het opslaan.<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te gaan.<br />');
        imagedestroy($destimg);
    }

    $query = mysql_query("INSERT INTO fotoalbum (inzender, email, plaats_foto, naam_object, text_foto, naam_foto, thumbnail, datum) VALUES ('".$inzender."','".$email."','".$plaats_foto."','".$naam_object."','".$text_foto."','".$userfile_name."','".$img_thumb."', NOW())");

    echo 'Het bestand is goed geupload,<br />';
    echo 'De gegevens zijn goed verwerkt.<br /><br />Klik <a href="javascript:history.go(-2);">hier</a> om terug te gaan.<br />';

}
else{

    echo '
    <form method="POST" action="'
.$_SERVER['PHP_SELF'].'" enctype="multipart/form-data">
    <input type="file" name="image"><br />
    <input type="text" name="inzender"> - Naam<br />
    <input type="text" name="email"> - Email<br />
    <input type="text" name="plaats_foto"> - Plaat van opname<br />
    <input type="text" name="naam_object"> - Naam van het object<br />
    <textarea name="text_foto" rows="15"></textarea> - verhaal bij Je foto<br />
    <input type="reset" value="Leegmaken" /><input type="Submit" name="Submit" value="Submit">

    </form>'
;
}


?>

Ik zal wel weer een fout hebben gemaakt, maar ik zie deze helaas niet.
Gewijzigd op 10/04/2013 15:17:54 door Arthur Heijmen
 
PHP hulp

PHP hulp

27/04/2024 22:35:33
 
- Mark -

- Mark -

10/04/2013 15:27:15
Quote Anchor link
Ik neem aan dat het gedeelte dat verbinding maakt met je database in config.php staat?

Bouw anders eens fout afhandeling in, dan kun je ook zien wat er fout gaat. Ik neem aan dat je geen foutmelding te zien krijgt?
 
Obelix Idefix

Obelix Idefix

10/04/2013 15:29:17
Quote Anchor link
Bouw foutafhandeling in bij je query om te kijken of die (goed) wordt uitgevoerd.

Zet error-reporting aan.
$_SERVER['PHP_SELF'] zou onveilig zijn. Laat liever weg.
Wat doe je op regel 53 t/m 57? Vermoedelijk wil je variabelen kopiëren. Is niet nodig. Bovendien controleer je niet of ze wel bestaan. Doordat je geen beveiliging (en controles) toepast is je query onveilig.
 



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.