Forum » Server-Side scripting » Uploadscript
webbasing.com
Berichten: 593
avatar
Offline Stuur privebericht
Beste leden van Criminalspoint,

Ik ben al een tijdje bezig hiermee met een script om MP3 bestanden te uploaden.
Nu wil het niet lukken... Ik heb in me php.ini me max_file_size al veranderd naar 8M (8mb) dus.
hieronder het script..

Code | Selecteer Alles
minimaliseren
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
<?php
if (isset($_POST['submit']))
{
//**********************************************************************************************


echo "Please wait while we attempt to upload your file...<br><br>";

//**********************************************************************************************


$target_path "upload/";

$flag 0// Safety net, if this gets to 1 at any point in the process, we don't upload.

$filename $_FILES['uploadedfile']['name'];
$filesize $_FILES['uploadedfile']['size'];
$mimetype $_FILES['uploadedfile']['type'];

$filename htmlentities($filename);
$filesize htmlentities($filesize);
$mimetype htmlentities($mimetype);

$target_path $target_path basename$filename );

if(
$filename != ""){

echo 
"Beginning upload process for file named: ".$filename."<br>";
echo 
"Filesize: ".$filesize."<br>";
echo 
"Type: ".$mimetype."<br><br>";

}

//First generate a MD5 hash of what the new file name will be
//Force a MP3 extention on the file we are uploading

$hashedfilename md5($filename);
$hashedfilename $hashedfilename.".mp3";

//Check for empty file
if($filename == ""){
$error "No File Exists!";
$flag $flag 1;

}

//Now we check that the file doesn't already exist.
$existname "upload/".$hashedfilename;

if(
file_exists($existname)){

if(
$flag == 0){
$error "Your file already exists on the server!  
Please choose another file to upload or rename the file on your
computer and try uploading it again!"
;
}

$flag $flag 1;
}

//Whitelisted files - Only allow files with MP3 extention onto server...

$whitelist = array(".mp3");
foreach (
$whitelist as $ending) {

if(
substr($filename, -(strlen($ending))) != $ending) {
 
$error "The file type or extention you are trying to upload is not allowed!  
You can only upload MP3 files to the server!"
;
$flag++;
}
}


//Now we check the filesize.  If it is too big or too small then we reject it
//MP3 files should be at least 1MB and no more than 6.5 MB

if($filesize 6920600){
//File is too large

if($flag == 0){
$error "The file you are trying to upload is too large!  
Your file can be up to 6.5 MB in size only.  
Please upload a smaller MP3 file or encode your file with a lower bitrate."
;
}

$flag $flag 1;
}

if(
$filesize 1048600){
//File is too small

if($flag == 0){
$error "The file you are trying to upload is too small!
Your file has been marked as suspicious because our system has
determined that it is too small to be a valid MP3 file.
Valid MP3 files must be bigger than 1 MB and smaller than 6.5 MB."
;
}

$flag $flag 1;

}

//Check the mimetype of the file
if($mimetype != "audio/x-mp3" and $mimetype != "audio/mpeg"){

if(
$flag == 0){
$error "The file you are trying to upload does not contain expected data.
Are you sure that the file is an MP3?"
;
}

$flag $flag 1;
}

//Check that the file really is an MP3 file by reading the first few characters of the file
$f = @fopen($_FILES['uploadedfile']['tmp_name'],'r');
$s = @fread($f,3);
@
fclose($f);
if(
$s != "ID3"){

if(
$flag == 0){
$error "The file you are attempting to upload does not appear to be a valid MP3 file.";
}

$flag++;
}



//All checks are done, actually move the file...

if($flag == 0){

if(
move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
   
 
    
//Change the filename to MD5 hash and FORCE a MP3 extention.

    
if(@file_exists("upload/".$filename)){

    
//Rename the file to an MD5 version
    
rename("upload/".$filename"upload/".$hashedfilename);

    echo 
"The file ".  basename$filename ). "
      has been uploaded.  Your file is <a href='uploads/
$hashedfilename'>here</a>.";
   
    }  
    else{
      echo 
"There was an error uploading the file, please try again!";
    }


} else{
    echo 
"There was an error uploading the file, please try again!";
}

}
else {
echo 
"File Upload Failed!<br>";
if(
$error != ""){
echo 
$error;
}
}
}
?>

<form action="" method="POST" enctype="multipart/form-data">
Browse file to upload <input type="file" name="filetoupload" id="filetoupload"><br/>
<input type="submit" name="submit"  value="Upload now">
</form>

hopelijk dat iemand weet wat hier fout aan is

map upload is al gechmod naar 755 dus dit is niet het probleem
Laatst gewijzigd door RDMNL2010 op 2010-10-11 17:24:50
11-10-2010 17:22
Dit topic is 146 keer bekeken door 24 verschillende leden
Reacties op: "Uploadscript"
1
Berichten: 2103
avatar
Offline Stuur privébericht
Handig als je vermeld wat niet werkt, eventuele fouten ?
11-10-2010 17:26
webbasing.com
Berichten: 593
avatar
Offline Stuur privébericht
Ja sorry vergeten,

Het probleem is dus dat ie geen fouten aangeeft.. maar ook niks upload. Als ik op de knop Upload now klik dan laad ie (dit duurt een minuutje ofzo) en daarna is het gewoon klaar.. zonder enige melding.

En als ik dan op me server kijk staat er dus niks in de map upload.
11-10-2010 17:27
Berichten: 2103
avatar
Offline Stuur privébericht
Staat de error report helemaal aan of gedeeltelijk ?
11-10-2010 17:28
webbasing.com
Berichten: 593
avatar
Offline Stuur privébericht
ik heb het overigens ook met dit scriptje geprobeerd
en deze deed het ook niet.:
overigens .png afbeeldingen e.d. doet deze wel
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
if(isset($_POST['sb'])) {
    
$path "../muziek";
    
$file $_FILES['filetoupload']['name'];
    
move_uploaded_file($_FILES['filetoupload']['tmp_name'], "$path/$file");
}
?>


<form action="" method="POST" enctype="multipart/form-data">
Browse file to upload <input type="file" name="filetoupload" id="filetoupload"><br/>
<input type="submit" name="sb" id="sb" value="Upload now">
</form>


Nieuwe reactie samengevoegd met originele reactie op 11.10.10 17:29:01:
error report staat helemaal aan

Quote: Superior

Staat de error report helemaal aan of gedeeltelijk ?



Nieuwe reactie samengevoegd met originele reactie op 11.10.10 17:56:12:
oke probleem is opgelost.. gewoon effe een simpele .htaccess code toegevoegd voor de file size blijkbaar werkt dit beter als het veranderen in me php.ini.

11-10-2010 17:28
R. Jipping
Berichten: 1596
avatar
Online Stuur privébericht
op aanvraag gesloten
11-10-2010 18:07
Reageer op: "Uploadscript"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden