Forum index ›
PHP & MySQL › [PHP] renamen uit script slopen.
Pagina:
1
Gepost op zondag 1 maart 2009, om 19:55
|
|
|
Ey, heb hier een PHP-uploadscriptje.
Maar, als de file geupload is, renamed ie hem automatisch naar je IP.
Dus kun je niet meerdere files uploaden.
Ik wil graag die functie eruit gesloopt hebben.
Ook wil ik graag, dat als er een file met dezelfde naam als een eerder ge-upload bestand geupload wordt, dat dan achter de naam vanzelf een oplopend getal komt.
dus file.png nog een keer geupload: file1 nog een keer file2 enz.
Hopelijk kan iemand dit ff voor me fixen!
Thnx!
Code:
|
C o d e
|
|
|
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
|
<?
/*
Copyright: RedFox @ WmCity
Upload dit bestand en maak in diezelfde dir een nieuwe map aan.
Geef hieronder bij $mapnaam de naam van de map op die je daar aan hebt gemaakt.
Geef die map alle rechten (CHMOD 777)
Vul bij $site hieronder je dir in waar dit bestand in staat.
*/
$url = "http://www.site.nl/";
$mapnaam = "geupload/";
if($_POST['submit']) {
$extensions = array();
$extensions['ext'][] = "image/gif";
$extensions['ext'][] = "image/jpg";
$extensions['ext'][] = "image/jpeg";
$extensions['ext'][] = "image/pjpeg";
$extensions['ext'][] = "image/png";
$extensions['ext'][] = "image/bmp";
$extensions['ext'][] = "image/x-png";
if(in_array($_FILES['file']['type'], $extensions['ext'])) {
if($_FILES['file']['size'] > 1048576) {
echo "Uw bestand is groter dan 1 MB (1024 KB)!<br>Klik <a href='javascript:history.back(1)'>hier</a> om terug te gaan!";
} else {
if($_FILES['file']['type'] == "image/gif") {
$ext = ".gif";
} elseif($_FILES['file']['type'] == "image/jpg") {
$ext = ".jpg";
} elseif($_FILES['file']['type'] == "image/jpeg") {
$ext = ".jpg";
} elseif($_FILES['file']['type'] == "image/pjpeg") {
$ext = ".jpg";
} elseif($_FILES['file']['type'] == "image/bmp") {
$ext = ".bmp";
} elseif($_FILES['file']['type'] == "image/png") {
$ext = ".png";
} elseif($_FILES['file']['type'] == "image/x-png") {
$ext = ".png";
}
if(file_exists($mapnaam.$_SERVER['REMOTE_ADDR'].$ext)) {
unlink($mapnaam.$_SERVER['REMOTE_ADDR'].$ext);
}
if(is_uploaded_file($_FILES['file']['tmp_name'])) {
move_uploaded_file($_FILES['file']['tmp_name'], $mapnaam.$_SERVER['REMOTE_ADDR'].$ext);
echo "Uw bestand is succesvol geupload!<br>De URL van uw bestand is: ".$url.$mapnaam.$_SERVER['REMOTE_ADDR'].$ext."<br><br>Klik <a href='".$mapnaam.$_SERVER['REMOTE_ADDR'].$ext."' target='_blank'>hier</a> voor een voorbeeld.";
} else {
echo "Er is iets fout gegaan tijdens het uploaden!<br>Probeert u het nogmaals..<br>Klik <a href='javascript:history.back(1)'>hier</a> om terug te gaan!";
}
}
} else {
echo "U heeft een bestand gekozen dat niet de extensie .gif, .jpg, .jpeg, .png of .bmp heeft!<br>Klik <a href='javascript:history.back(1)'>hier</a> om terug te gaan!<br><br>";
}
} else {
echo "<form method='post' enctype='multipart/form-data'>
De volgende extensies zijn toegestaan: .gif & .jpg & .jpeg & .png & .bmp.<br>
Let wel op dat het bestand niet groter is dan 1 MB<br><br>
Upload bestand: <input type='file' name='file' id='file'><br>
<br>
<input type='submit' name='submit' value='Upload bestand..'>
</form>";
}
?>
|
|
|
|
|
|
Gepost op zondag 1 maart 2009, om 20:11
|
Stijn<b>Neuker</b>
Saven Player 792 posts
|
|
Normaal staat er toch nog een op wmcity een uitgebreider die naar jouw wensen is dacht ik
|
|
|
|
|
Gepost op zondag 1 maart 2009, om 22:05
|
Saven
Beheerder 6316 posts
|
|
Vooruit, een upload class die ik even heb aangepast voor je van mijzelf:
|
C o d e
|
|
|
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
|
<?php
//
// (C) Saven.nl
//
//----------------------------------------------------------------
// Upload class > Upload images
//----------------------------------------------------------------
class upload
{
//-----------------------------------------
// Valid image extensions
//-----------------------------------------
private $imgext = array('gif', 'png', 'jpg', 'jpeg', 'bmp');
//-----------------------------------------
// Valid MIME-types
//-----------------------------------------
private $mimetypes = array('image/gif', 'image/png', 'image/x-png', 'image/jpeg', 'image/jpg', 'image/pjpeg', 'image/bmp');
//-----------------------------------------
// Max image sizes
//-----------------------------------------
private $max_height;
private $max_width;
private $max_filesize;
//-----------------------------------------
// Upload dir
//-----------------------------------------
private $dir;
//---------------------------------------------------------------
// Initiate settings
//---------------------------------------------------------------
public function __construct($dir, $max_height=100, $max_width=100, $max_filesize=200)
{
$this->dir = $dir;
if( !is_dir($this->dir) )
{
die('De directory '.$dir.' bestaat niet');
}
elseif( !is_writable($this->dir) )
{
die('Kan niet schrijven in '.$dir.'. CHMOD de map naar 0777');
}
else
{
$this->max_height = $max_height;
$this->max_width = $max_width;
$this->max_filesize = ($max_filesize * 1024);
}
}
//---------------------------------------------------------------
// Upload the image execute(uploadfield-name)
//---------------------------------------------------------------
public function execute($field)
{
if( empty($_FILES[$field]['tmp_name']) )
{
$return = 'Je hebt geen bestand geselecteerd';
}
else
{
$extension = pathinfo($_FILES[$field]['name'], PATHINFO_EXTENSION);
if( !in_array($extension, $this->imgext) )
{
$return = 'Je hebt een ongeldig bestand proberen te uploaden';
}
elseif( !in_array($_FILES[$field]['type'], $this->mimetypes) )
{
$return = 'Je hebt een ongeldige mime-type in je bestand';
}
elseif( $_FILES[$field]['size'] > $this->max_filesize )
{
$return = 'De bestandsgrootte van je afbeelding is groter dan '.$this->max_filesize.' kilobyte';
}
else
{
$imgsize = getimagesize($_FILES[$field]['tmp_name']);
if( $imgsize[0] > $this->max_width || $imgsize[1] > $this->height )
{
$return = 'Je afbeelding is groter dan '.$this->max_width.'x'.$this->max_height.' pixels';
}
else
{
if( is_uploaded_file($_FILES[$field]['tmp_name']) )
{
if( move_uploaded_file( $_FILES[$field]['tmp_name'], $this->dir.$_FILES[$field]['name']) )
{
/* jeuj geupload */
return true;
}
else
{
$return = 'Kon je afbeelding niet van locatie veranderen';
}
}
else
{
$return = 'Je afbeelding is niet geupload via HTTP-POST???????';
}
}
}
}
return $return;
}
}
?>
|
GEBRUIK:
|
C o d e
|
|
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<?php
/* new upload( upload_dir, max_height, max_width, max_filesize_in_kb */
$upload = new upload('/images/uploads/', 100, 100, 200);
$executed = $upload->execute('input_naam_uit_upload_form');
if( $executed !== true )
{
echo $executed;
}
else
{
echo 'succesvol geupload!';
}
?>
|
|
|
|
|
|
Pagina:
1
Er zijn 6 bezoekers online, waarvan 0 ingelogd.
Members ingelogd: