php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.03.2005, 11:39  
Gast
 
Beiträge: n/a
Standard upload script ändern

Hallo,

Kann mir jemand folgenden upload script umändern ?

Ich will das , wenn mann ein file hochläd zb fight.gif das sich das file umändert zb auf P8p7ym.gif !

danke im voraus !

Hier script code:

PHP-Code:
<?php
$ip 
getenv("REMOTE_ADDR");
############ Einstellungen ############
$UPLOAD_PFAD "upload/0503";    // Pfad wo die Dateien gespeichert werden. Am Ende darf kein '/' stehen. Der Ordner muss CHMOD 777 Rechte haben.
$maxsize "6691456";        // Maximale Uploadgrösse (in byte) | 1024 byte ~ 1 kb | 10024 byte ~ 10 kb | 100024 ~ 100 kb | 1000024 ~ 1 MB
$extensions = array(".jpg"".gif"".png"".pdf"".JPG"".bmp"".GIF"".jpeg"".JPEG"".swf"".zip"".rar");     // Erlaubte Dateitypen
$domain "http://hosting-place.de/"// Domain MIT http:// abewr OHNE / am Ende!!


############ Funktionen (KEINE ÄNDERUNGEN) ############

    
if($_POST['upload'] == true){
    
$name $_FILES['datei']['name'];                                                                    // Originalname der Datei
    
$tmp_name $_FILES['datei']['tmp_name'];                                                            // Uploadname der Datei
    
$size $_FILES['datei']['size'];                                                                    // Größe der Datei
    
$type $_FILES['datei']['type'];                                                                     // Dateityp (.htm, .gif usw.)
    
$ext_tmp explode("."$name);
    
$ext ".".$ext_tmp[(count($ext_tmp)-1)];
    
$html "<head><script type=\"text/javascript\">function CopytoClipboard(object) {Copied = object.createTextRange();Copied.execCommand(\"Copy\");}</script></head>";

    
$neuerDateiname $UPLOAD_PFAD."/".$name;

    if(
in_array($ext$extensions))

    if(
$size<=$maxsize && $size!=0)

    if(
copy($tmp_name$neuerDateiname))
    {
      echo 
$html."<center><form name=\"up\"><textarea cols=\"53\" rows=\"2\" name=\"text\">".$domain."".$UPLOAD_PFAD."/".$name."</textarea>
<input type=\"button\" value=\"In die Zwischenablage kopieren\" onclick=\"CopytoClipboard(document.up.text)\" style=\"border: 1px solid black; font-face: verdana; font-size: 11px;\"></form></center>"
// Bildanzeige
    
}
    else
      echo 
"Fehler beim Hochladen";                                                                        // Ausgabe des nicht erfolgreichen Uploads
    
else
      echo 
"Die Größe der Datei darf nicht 0 KB oder mehr als 6144 KB betragen.";                                                // Ausgabe eines fehlers, bei zu großer Datei
     
else
      echo 
"Es sind nur Dateien mit der Endung jpg, gif, png, swf, zip, rar zulässig!";                                                                  // Ausgabe bei Falschem Dateityp
    
}
?>
<html>
<body>
<link rel="stylesheet" type="text/css" href="./s.css">
<form action="" enctype="multipart/form-data" method="post" name="form1">
<table width="100%"
 border="0" cellpadding="0" cellspacing="5" class="" style="width: 120%;">
  <tbody>
    <tr>
      <td style="text-align: left;">Datei:</td>
      <td width="566" align="left">
<input type="file" name="datei"  style="border: 1px solid black; font-face: verdana; font-size: 11px;" type="file" size="32"
 name="bilddatei"></td></tr>
    <tr>
      <td style="text-align: left;">Ihre IP-Adresse:</td>
      <td align="left"><?php echo "$ip"?></td>
    </tr>
    <tr>
      <td style="text-align: left;">Erlaubte Dateitypen: </td>
      <td align="left">jpg, gif, png, bmp, zip, rar, swf</td>
    </tr>
    <tr>
      <td style="text-align: left; width: 200px;">Maximalgr&ouml;&szlig;e:</td>
      <td align="left">[b]6144[/b] KByte</td>
    </tr>
    <tr>
      <td style="text-align: left;">Haltbarkeit:</td>
      <td align="left">mind. [b]10[/b] Jahre</td>
    </tr>
    <tr>
      <td align="right"> </td>
      <td align="left">

<input type="submit" name="Submit" value="    Datei hochladen    " style="border: 1px solid black; font-face: verdana; font-size: 11px;">
<input type=hidden name="upload" value=true>
</form>
</body>
</html>
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.03.2005, 11:42  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

warum? kannst du das genauer machen? gehts dir darum, dass man 10 mal ne test.gif hochladen kann ohne dass es zu namenskonfliketen kommt? oder soll einfach nur der name nicht erhalten bleiben? oder wie oder was?.

ausserdem was willst du? ne fertige lösung oder hast du selbst plan von php? falls du keinen hast, gehört sowas unter gesuche, wenn du jemanden suchst der dir das ganze nur macht.

mfg
robo47
robo47 ist offline  
Alt 21.03.2005, 11:44  
Gast
 
Beiträge: n/a
Standard

also der name soll umgeändert werden, da einige user die selben dateiname hochladen und dann wird die vorhandete überschrieben und das will ich nicht, darum will ich das sich das file selber umändert!

Nein ich hab leider kein plan von php!
 
Alt 21.03.2005, 12:00  
Gast
 
Beiträge: n/a
Standard

Falls DB:
Erstelle eine tabelle mit ner id beginnend bei 0.

PHP:
Verbindung zur DB, aktuelle ID auslesen und in Variable speichern ($i).
$neuerDateiname = $UPLOAD_PFAD."/".$name.$i; einfügen und das alte ersetzen.
$i um eins hochzählen ($i++).
Neue id in DB schreiben.

Falls keine DB:
Das ganze inne Textdatei.

Wie das ganze im Detail funktioniert bitte im Forum suchen oder Tutorials ansehen.
 
Alt 21.03.2005, 14:38  
Gast
 
Beiträge: n/a
Standard

Also ich möchte das es nur dateiname umändert, nicht mit mysql oder auch was !

mann kann ja code so umändert !

hab hier nen upload script der das verändert , aber der gefällt mir nicht ,da er zb so verändert fhsuf3hrjj3hj4h3j.gif zu lang mir reichen 5 zahlen,buchstaben!

hier der das verändert :

PHP-Code:
<?php

// Einstellungen
$maxsize "40960"// Maximale Uploadgrösse (40 Kb) 
$uploddir "data/"// Upload Ordner
$extensions = array(".jpg"".gif"); // Erlaubte Erweiterungen

if($_POST['action']=="upload")
{
$tmp_name $HTTP_POST_FILES['bild']['tmp_name']; // Der Originalname 
$name $HTTP_POST_FILES['bild']['name']; // Der Originalname 
$size $HTTP_POST_FILES['bild']['size']; // Größe der Datei 
$type $HTTP_POST_FILES['bild']['type']; // Der MIME Type der Datei 

$ext_tmp explode("."$name);
$ext ".".$ext_tmp[(count($ext_tmp)-1)];

if(
in_array($ext$extensions))

if(
$size<=$maxsize && $size!=0)
{
while(
file_exists($uploddir.$newname) || !$newname)
{
$newname md5(uniqid(rand()));
}

if(
move_uploaded_file($tmp_name$uploddir.$newname.$ext))
{
echo 
"Die Datei erfolgreich hochgeladen.
"

echo 
"Größe: ".$size." Byte
"

echo 
"Name: ".$name."
"
;
echo 
"MIME-Type: ".$type."
"
;
echo 
"Ansehen: [url='".$uploddir.$newname.$ext."']".$uploddir.$newname.$ext."[/url]"
}
else{echo 
"Fehler: Deitei konnte nicht verschoben werden!";}
}
else

echo 
"Ihre Datei ($size) ist über $maxsize Bytes oder gleich 0 KB"

}
else

echo 
"Falsche Erweiterung: ".$name

}
else

echo 
"<form action='".$_SERVER['PHP_SELF']."' enctype=\"multipart/form-data\" method='post'>";
echo 
"<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"".$maxsize."\">";
echo 
"<input type='hidden' name='action' value='upload'>"
echo 
"<table>"
echo 
"<tr>"
echo 
"<td>Datei</td><td><input type='file' name='bild'></td>"
echo 
"</tr><tr>"
echo 
"<td> </td><td><input type='submit' value='Hochladen'></td>"
echo 
"</tr>"
echo 
"</form>";
echo 
"</table>"


?>
 
Alt 21.03.2005, 15:37  
Gast
 
Beiträge: n/a
Standard

Zitat:
Nein ich hab leider kein plan von php!
Dann lerne es, wenn du sowas haben willst!

Was spielt das für eine Rolle, ob der Dateiname 5 oder 32 Zeichen hat? Ist doch egal. Aber wenn du es ändern willst, dann könntest du hier eingreifen:
PHP-Code:
while(file_exists($uploddir.$newname) || !$newname

  
$newname md5(uniqid(rand())); 

Gruß
phpfan
 
Alt 21.03.2005, 16:16  
Gast
 
Beiträge: n/a
Standard

da bei mir viele uppen , und da wäre ne großer link zu schlecht !


Wohin muss ich denn diese code einfügen ? sorry ich verstehe wirglich nichts von php


also bei diesen uplaod script :

PHP-Code:
<?php 
$ip 
getenv("REMOTE_ADDR"); 
############ Einstellungen ############ 
$UPLOAD_PFAD "upload/0503";   // Pfad wo die Dateien gespeichert werden. Am Ende darf kein '/' stehen. Der Ordner muss CHMOD 777 Rechte haben. 
$maxsize "6691456";      // Maximale Uploadgrösse (in byte) | 1024 byte ~ 1 kb | 10024 byte ~ 10 kb | 100024 ~ 100 kb | 1000024 ~ 1 MB 
$extensions = array(".jpg"".gif"".png"".pdf"".JPG"".bmp"".GIF"".jpeg"".JPEG"".swf"".zip"".rar");    // Erlaubte Dateitypen 
$domain "http://hosting-place.de/"// Domain MIT http:// abewr OHNE / am Ende!! 


############ Funktionen (KEINE ÄNDERUNGEN) ############ 

    
if($_POST['upload'] == true){ 
    
$name $_FILES['datei']['name'];                                                   // Originalname der Datei 
    
$tmp_name $_FILES['datei']['tmp_name'];                                             // Uploadname der Datei 
   
$size $_FILES['datei']['size'];                                                   // Größe der Datei 
   
$type $_FILES['datei']['type'];                                                    // Dateityp (.htm, .gif usw.) 
   
$ext_tmp explode("."$name); 
    
$ext ".".$ext_tmp[(count($ext_tmp)-1)]; 
   
$html "<head><script type=\"text/javascript\">function CopytoClipboard(object) {Copied = object.createTextRange();Copied.execCommand(\"Copy\");}</script></head>"

    
$neuerDateiname $UPLOAD_PFAD."/".$name

   if(
in_array($ext$extensions)) 

   if(
$size<=$maxsize && $size!=0

    if(
copy($tmp_name$neuerDateiname)) 
   { 
      echo 
$html."<center><form name=\"up\"><textarea cols=\"53\" rows=\"2\" name=\"text\">".$domain."".$UPLOAD_PFAD."/".$name."</textarea>
<input type=\"button\" value=\"In die Zwischenablage kopieren\" onclick=\"CopytoClipboard(document.up.text)\" style=\"border: 1px solid black; font-face: verdana; font-size: 11px;\"></form></center>"
// Bildanzeige 
   

    else 
      echo 
" Fehler beim Hochladen";                                                      // Ausgabe des nicht erfolgreichen Uploads 
   
else 
      echo 
" Die Größe der Datei darf nicht 0 KB oder mehr als 6144 KB betragen.";                                    // Ausgabe eines fehlers, bei zu großer Datei 
     
else 
      echo 
" Es sind nur Dateien mit der Endung jpg, gif, png, swf, zip, rar zulässig!";                                                  // Ausgabe bei Falschem Dateityp 
    

?> 
<html> 
<body> 
<link rel="stylesheet" type="text/css" href="./s.css"> 
<form action="" enctype="multipart/form-data" method="post" name="form1"> 
<table width="100%" 
border="0" cellpadding="0" cellspacing="5" class="" style="width: 120%;"> 
  <tbody> 
    <tr> 
      <td style="text-align: left;">Datei:  </td> 
      <td width="566" align="left"> 
<input type="file" name="datei"  style="border: 1px solid black; font-face: verdana; font-size: 11px;" type="file" size="32" 
name="bilddatei"></td></tr> 
    <tr> 
      <td style="text-align: left;">Ihre IP-Adresse:</td> 
      <td align="left"><?php echo "$ip"?></td> 
    </tr> 
    <tr> 
      <td style="text-align: left;">Erlaubte Dateitypen:   </td> 
      <td align="left">jpg, gif, png, bmp, zip, rar, swf</td> 
    </tr> 
    <tr> 
      <td style="text-align: left; width: 200px;">Maximalgr&ouml;&szlig;e:</td> 
      <td align="left">[b]6144[/b] KByte</td> 
    </tr> 
    <tr> 
      <td style="text-align: left;">Haltbarkeit:</td> 
      <td align="left">mind. [b]10[/b] Jahre</td> 
    </tr> 
    <tr> 
      <td align="right">   </td> 
      <td align="left"> 

<input type="submit" name="Submit" value="    Datei hochladen    " style="border: 1px solid black; font-face: verdana; font-size: 11px;"> 
<input type=hidden name="upload" value=true> 
</form> 
</body> 
</html>
 
Alt 21.03.2005, 17:45  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von phl007
da bei mir viele uppen , und da wäre ne großer link zu schlecht !
Das muss man jetzt nicht verstehen, oder? Und wieso postest du unterschiedliche Scripte? Mal wird der Name so

$name = $_FILES['datei']['name'];

ermittelt und mal so:

while(file_exists($uploddir.$newname) || !$newname)
{
$newname = md5(uniqid(rand()));
}


Mal wieder copy benutzt, was schlecht ist, und mal move_uploaded_file. Du hast null Ahnung, willst es anscheinend auch nicht lernen, sondern dir lieber das Durcheinander kostenlos machen lassen, oder wie soll man das verstehen? Ich verrate dir mal was, mit so einer Einstellung schafft man sich nicht unbedingt Freunde in einem Forum.

Nimm das Script mit den 32-Zeichen langen Namen, das ist besser.

Gruß
phpfan
 
Alt 21.03.2005, 18:12  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
<?php
$ip 
getenv("REMOTE_ADDR");
############ Einstellungen ############
$UPLOAD_PFAD "upload/0503";    // Pfad wo die Dateien gespeichert werden. Am Ende darf kein '/' stehen. Der Ordner muss CHMOD 777 Rechte haben.
$maxsize "6691456";        // Maximale Uploadgrösse (in byte) | 1024 byte ~ 1 kb | 10024 byte ~ 10 kb | 100024 ~ 100 kb | 1000024 ~ 1 MB
$extensions = array(".jpg"".gif"".png"".pdf"".JPG"".bmp"".GIF"".jpeg"".JPEG"".swf"".zip"".rar");     // Erlaubte Dateitypen
$domain "http://hosting-place.de/"// Domain MIT http:// abewr OHNE / am Ende!!


############ Funktionen (KEINE ÄNDERUNGEN) ############

    
if($_POST['upload'] == true){
    
$name $_FILES['datei']['name'];                                                                    // Originalname der Datei
    
$tmp_name $_FILES['datei']['tmp_name'];                                                            // Uploadname der Datei
    
$size $_FILES['datei']['size'];                                                                    // Größe der Datei
    
$type $_FILES['datei']['type'];                                                                     // Dateityp (.htm, .gif usw.)
    
$ext_tmp explode("."$name);
    
$ext ".".$ext_tmp[(count($ext_tmp)-1)];
    
$html "<head><script type=\"text/javascript\">function CopytoClipboard(object) {Copied = object.createTextRange();Copied.execCommand(\"Copy\");}</script></head>";

    
$neuerDateiname $UPLOAD_PFAD."/".$name;

    if(
in_array($ext$extensions))

    if(
$size<=$maxsize && $size!=0)

    if(
copy($tmp_name$neuerDateiname))
    {
      echo 
$html."<center><form name=\"up\"><textarea cols=\"53\" rows=\"2\" name=\"text\">".$domain."".$UPLOAD_PFAD."/".$name."</textarea>
<input type=\"button\" value=\"In die Zwischenablage kopieren\" onclick=\"CopytoClipboard(document.up.text)\" style=\"border: 1px solid black; font-face: verdana; font-size: 11px;\"></form></center>"
// Bildanzeige
    
}
    else
      echo 
"Fehler beim Hochladen";                                                                        // Ausgabe des nicht erfolgreichen Uploads
    
else
      echo 
"Die Größe der Datei darf nicht 0 KB oder mehr als 6144 KB betragen.";                                                // Ausgabe eines fehlers, bei zu großer Datei
     
else
      echo 
"Es sind nur Dateien mit der Endung jpg, gif, png, swf, zip, rar zulässig!";                                                                  // Ausgabe bei Falschem Dateityp
    
}
?>
<html>
<body>
<link rel="stylesheet" type="text/css" href="./s.css">
<form action="" enctype="multipart/form-data" method="post" name="form1">
<table width="100%"
 border="0" cellpadding="0" cellspacing="5" class="" style="width: 120%;">
  <tbody>
    <tr>
      <td style="text-align: left;">Datei:</td>
      <td width="566" align="left">
<input type="file" name="datei"  style="border: 1px solid black; font-face: verdana; font-size: 11px;" type="file" size="32"
 name="bilddatei"></td></tr>
    <tr>
      <td style="text-align: left;">Ihre IP-Adresse:</td>
      <td align="left"><?php echo "$ip"?></td>
    </tr>
    <tr>
      <td style="text-align: left;">Erlaubte Dateitypen: </td>
      <td align="left">jpg, gif, png, bmp, zip, rar, swf</td>
    </tr>
    <tr>
      <td style="text-align: left; width: 200px;">Maximalgr&ouml;&szlig;e:</td>
      <td align="left">[b]6144[/b] KByte</td>
    </tr>
    <tr>
      <td style="text-align: left;">Haltbarkeit:</td>
      <td align="left">mind. [b]10[/b] Jahre</td>
    </tr>
    <tr>
      <td align="right"> </td>
      <td align="left">

<input type="submit" name="Submit" value="    Datei hochladen    " style="border: 1px solid black; font-face: verdana; font-size: 11px;">
<input type=hidden name="upload" value=true>
</form>
</body>
</html>

?>
^ Aus diesem script will ich das wenn mann was hochläd , sich die dateiname automatisch umändert (aber nicht so lang 5,6 buchschtaben reichen!)
 
Alt 21.03.2005, 18:34  
Gast
 
Beiträge: n/a
Standard

Du kannst das Script jetzt noch 'zig mal posten, es ändert nichts an der Tatsache, dass du genau die falsche Version nimmst und immer noch hier
PHP-Code:
while(file_exists($uploddir.$newname) || !$newname

  
$newname md5(uniqid(rand())); 

den Namen kürzen kannst, und zwar mit http://de3.php.net/manual/de/function.substr.php und es ändert auch nichts an der Tatsache, dass die Länge des Namens wurscht ist.

Gruß
phpfan
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Upload Script hat Probleme mit versch. Browsern [MimeType] fdm PHP Tipps 2008 11 27.07.2008 23:35
Upload script. 2er2 Trash 2 07.04.2008 10:24
Bilder Upload Script einballimwasser Trash 3 24.06.2007 03:45
Upload Script + Multible Server cyberstorm PHP Tipps 2006 5 11.10.2006 19:43
Probelem bei meinem Upload Script für Bilder wiegia086 PHP Tipps 2006 3 17.03.2006 09:14
Upload Script Trash 3 11.02.2006 09:53
Daten Upload Script Hilfe!! PHP Tipps 2007 9 29.12.2005 10:39
Suche Upload Script Beitragsarchiv 1 20.07.2005 15:26
Upload Script PHP Tipps 2005-2 8 01.07.2005 08:45
suche upload script Beitragsarchiv 6 14.02.2005 22:25
Upload Script funktioniert lokal nicht?! TheTommynator PHP Tipps 2005 16 22.01.2005 23:42
[Erledigt] [PHP] Problem mit Script fuer Browserbasierten Upload PHP-Fortgeschrittene 5 26.12.2004 13:49
Upload Script. PHP Tipps 2004 4 05.11.2004 10:53
Ich bin auf der Suche nach einem fertigen Menü Upload Script Beitragsarchiv 7 22.08.2004 18:53
Upload mit Fehlermeldung "The script whose uid is 982 i PHP Tipps 2004 2 06.07.2004 13:18

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php script md5 ändern, mime type upload ändern, upload script pdf, im scriptcode pdf hochladen, upload script copy als textdatei, $newname = md5(uniqid(rand()));, mime type .pdf upload einstellen, php mime ändern

Alle Zeitangaben in WEZ +1. Es ist jetzt 19:33 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.