[PHP] Upload script wil niet

Pagina: 1
Acties:
  • 48 views sinds 30-01-2008

  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 20-08 14:51

TwoR

Gekleurde stippen

Topicstarter
Ik heb een script gemaakt om een foto/plaatje op internet te zetten. Het doet het volgende. Je krijgt een klein formuliertje waar je de Categorie kan kiezen het bestand kan selecteren en kan aangeven of de foto actief moet zijn. Als je dit allemaal hebt gedaan en je klikt op Submit dan gaat het script kijken of de foto al bestaat en of de grootte en de extensie goed is.
Als dit allemaal klaar is moet het bestand geupload worden en de naam van het bestand samen met de rest van de gegevens in de DB gezet worden.

Mijn probleem is dus dat er niks in de DB omt te staan. Het plaatje wordt wel geupload.

De 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
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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
<?php
include "boven.php";
include "links.php";
include "common.inc.php";

if(!$login){


    echo "
    <div class=\"txt\">Je bent niet ingelogt<br>
    
    <a href=\"main.php\">Ga hiereen om in te loggen</a><P>
    "; 

} else { 

if ($submit != ""){
    
    if ($categorie == "") 
        { 
        
        echo "<div class=\"txt\"><br>U heeft geen categorie ingevult !!<br>"; 
        echo "<a href=\"javascript:history.go(-1)\">Klik hier om terug te gaan.</a> "; 
        echo ""; 
    }else{
    
    
    
    if ($MyFile == "") 
        { 
        
        echo "<div class=\"txt\"><br>Er is geen plaatje geselecteerd!!<br>"; 
        echo "<a href=\"javascript:history.go(-1)\">Klik hier om terug te gaan.</a> "; 
        echo ""; 
    }else{
    
  

$MyFile_name = $HTTP_POST_FILES['MyFile']['name']; 
$MyFile_type = $HTTP_POST_FILES['MyFile']['type']; 
$MyFile_size = $HTTP_POST_FILES['MyFile']['size']; 


$width = 1000; 
$height = 1000; 
$maximum_size = 204800; 

?> 

<? 


//Check of er niet al een plaatje bestaat met dezelfde bestandsnaam. 

function check_bestaande_bestanden($MyFile_name) 
{ 

$aantal = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM foto WHERE foto = '$MyFile_name'")); 

if ($aantal[0] > 0) 
    { 
    return 1; 
    } 
    else { 
    return 0; 
    } 

} 

//Check de bestandsgroote 

function check_size($MyFile_size, $maximum_size) 
{ 
if ($MyFile_size < $maximum_size) 
    { 
    return 0; 
    } 
    else { 
    return 1; 
    } 

} 

//Check de extensie van het plaatje 

function check_extensie($MyFile_name, $MyFile_type) 
{ 
    // Filename + extensie van geuploade bestand 
    $extensie = explode ("/", $MyFile_type); 

    // Check of extensie voldoet aan eis (in dit geval .jpg) 
    if ($extensie[1] != "jpg" && $extensie[1] != "JPG" && $extensie[1] != "jpeg"&& $extensie[1] != "JPEG" && $extensie[1] != "pjpeg"&& $extensie[1] != "PJPEG") { 
        return 1; 
    }else { return 0;} 

} 


//Check de afmetingen van het plaatje. 

function check_plaatje($MyFile_name, $width, $height) 
{ 
    $plaatje = getimagesize("../images/pictures/$MyFile_name"); 

    if ($plaatje[0] > $width || $plaatje[1] > $height){ 
        return 1; 
    } else {return 0;} 
} 

function delete_plaatje($MyFile_name) 
{ 
    unlink("../images/pictures/$MyFile_name"); 
} 

function delete_dbentry($MyFile_name) 
{ 
$query1 = "DELETE FROM foto WHERE foto = '$MyFile_name'"; 
$result = mysql_query($query1); 
} 

function upload_file($MyFile, $MyFile_name, $categorie, $actief) 
{ 

    move_uploaded_file ($MyFile, "../images/pictures/$MyFile_name");
       
       
    $query = "INSERT INTO foto (foto, volgorde, actief) VALUES('$MyFile_name', '$volgorde', '$actief')"; 
    $result = mysql_query($query); 
}

if ($submit == "" AND $titel == "" AND $text == "") 
{ 
    echo " Het formulier is niet vollidig ingevuld ";
}else{
    
    
if (check_bestaande_bestanden($MyFile_name) == 0) 
    { 
    if (check_size($MyFile_size, $maximum_size) == 0) 
        { 
        if(check_extensie($MyFile_name, $MyFile_type) == 0) 
            { 
            upload_file($MyFile, $MyFile_name, $categorie, $actief); 

            if(check_plaatje($MyFile_name, $width, $height) ==1) 
            { 
            delete_plaatje($MyFile_name); 
            delete_dbentry($MyFile_name); 
            print("De afmetingen van het plaatje dat u probeerde te uploaden overschrijd de maximale waarden."); 
            } else print("Dit artikel is succesvol op internet gezet."); 

            } else print("Er kunnen alleen plaatjes geupload worden die als extensie .jpg of .jpeg hebben"); 
        } else print("Het door u geuploade bestand is groter dan 200 Kb."); 
    } else print("Er bestaat al een plaatje met deze naam"); 
} 


}   
    
}

}else{



$sql2 = "SELECT CatID, CatName FROM categorien ORDER BY CatName ASC";
$query1 = mysql_query($sql2) or die(mysql_error());
 
$options = "";
 if (mysql_num_rows($query1)){
    while ($query1_field = mysql_fetch_array($query1)){
        $options .= "<option value=\"$query1_field[CatID]\">$query1_field[CatName]</option>";
    }
 }




echo "


<div class=\"txt\">


<form name=\"form\" method=\"post\" action=\"$PHP_SELF\" enctype=\"multipart/form-data\"> 
<table width=\"400\" border=\"0\">
<tr>
<td valign=\"top\" class=\"txt\">
Categorie
</td>
<td valign=\"top\" class=\"txt\">
<SELECT NAME=\"categorie\">
<option value=\"\">Selecteer Categorie</option>
$options
</SELECT>
</td></tr>

<tr><td valign=\"top\" class=\"txt\">
Foto:</td><td valign=\"top\" class=\"txt\"><INPUT NAME=\"MyFile\" TYPE=\"FILE\" value=\"$MyFile\"> </td></tr>
<tr>
<td valign=\"middle\" class=\"txt\">
Actief:</td><td>
<input type=\"checkbox\" name=\"actief\" value=\"1\" checked>
</td></tr>

<tr>

<td colspan=\"2\" align=\"center\">
<br>
<INPUT TYPE=\"SUBMIT\" NAME=\"submit\" VALUE=\"Submit\"> 
</tr></td>
</table>

</form> 
";
}
}

?>

Wie kan er zien wat ik fout doe? ik heb het nu al 100 keer overgelezen maar zie niks fouts volgens mij.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Gokje: Zie dit

En anders wordt het debuggen. (Zie hier voor enkele tips

En een andere vraag. Je verwacht toch niet dat we hier 219 regels gaan napluizen voor je?

[ Voor 53% gewijzigd door gorgi_19 op 10-06-2003 15:32 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 20-08 14:51

TwoR

Gekleurde stippen

Topicstarter
ja oke maar lokaal werkt het ook niet terwijl dit script daar eerder wel werkte en er is niks met de server gebeurd.

Nee dat verwacht ik ook niet maar ik weet echt niet meer waar de fout zit en weet dus ook niet welk stukje ik moest posten dus ik dacht dan alles maar.

[ Voor 41% gewijzigd door TwoR op 10-06-2003 15:33 ]


  • Brakkie
  • Registratie: Maart 2001
  • Niet online

Brakkie

blaat

Dat script heb je trouwens niet zelf geschreven want dat heb ik gedaan. Netjes van je dat je daar over liegt. :| Niet dat ik dr nu nog trots op ben want het is zo brak als wat. 8)7

Systeem | Strava


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

TwoR schreef op 10 June 2003 @ 15:32:
ja oke maar lokaal werkt het ook niet terwijl dit script daar eerder wel werkte en er is niks met de server gebeurd.

Nee dat verwacht ik ook niet maar ik weet echt niet meer waar de fout zit en weet dus ook niet welk stukje ik moest posten dus ik dacht dan alles maar.
Erhm.. Breekpunten zetten? Controleren in je code wanneer wat uitgevoerd wordt, in welke volgorde? Welke waarde variabelen op een bepaald punt hebben?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-08 13:19

.oisyn

Moderator Devschuur®

Demotivational Speaker

hop weg, dit is echt te :r voor woorden

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

* curry684 typt te langzaam.... :)

[ Voor 90% gewijzigd door curry684 op 10-06-2003 15:39 ]

Professionele website nodig?

Pagina: 1

Dit topic is gesloten.