Welkom, Gast. Je bent niet ingelogd.

PHP renamen uit script slopen.

Bjorg
onbegrijplijk lekker
Geplaatst op: 01 Mar 2009, 19:55
PimpCoins: 0
💸+
Bewerken Quote

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:

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
<? 
/* 
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>"; 
} 
?>

Stijn
<b>Neuker</b>
Geplaatst op: 01 Mar 2009, 20:11
PimpCoins: 0
💸+
Bewerken Quote

Normaal staat er toch nog een op wmcity een uitgebreider die naar jouw wensen is dacht ik

Saven
admin
Geplaatst op: 01 Mar 2009, 22:05
PimpCoins: 0
💸+
Bewerken Quote

Vooruit, een upload class die ik even heb aangepast voor je van mijzelf:

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:

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!';
}

?>

📫

Nieuw privébericht

🔥

Registreren


Login