Убрать переименование файлов в md5

Discussion in 'PHP' started by Vinsik, 9 Jan 2009.

  1. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    как убрать переименование файлов в их md5 хеш. Надо сделать чтоб оставалось оригинальное навзание, тока чтоб пробелы на _ заменялись =)
    PHP:
    <?
    include(
    "include/common.php");

    if(
    $loggedin){
    include(
    "include/accmenu.php");
    }
    if( 
    $_POST['submit'] && $_FILES['attached']['name'] ){
    $ok_filetypes explode("|",$att_filetypes);
    if (!
    $_FILES['attached']['error'] && $_FILES['attached']['size'] > $att_max_size*1024){
    errform('<CENTER>Извините, слишком большой размер файла!</CENTER><BR><BR>'); // #err
    $step 1;
    }
    $filename = (!$_FILES['attached']['error'] ? substrbasename($_FILES['attached']['name']), -30 ) : '');
    $x strtolowersubstr($_FILES['attached']['name'], -3));
    if(
    $filename && !in_array($x$ok_filetypes) ){
    errform('<CENTER>Не поддерживаемый тип файла!!!</CENTER><BR><BR>');
    $step 1;
    }
    if(!
    $posterr){
    if(!isset(
    $_GET["ipaddress"]) || ($_GET["ipaddress"] == "")) {
    $ipaddress $_SERVER['REMOTE_ADDR'];
    $local 1;
    } else {
    $ipaddress $_GET["ipaddress"];
    $local 0;
    }
    $uniq substrmd5(uniqid (rand())), 010 );
    $ext strtolowersubstr($_FILES['attached']['name'], -3));
    move_uploaded_file($_FILES['attached']['tmp_name'], $att_path."/".$uniq.".".$ext );
    $strQuery "INSERT INTO images25 SET ";
    $strQuery .= "filename='".$uniq.".".$ext."',";
    $strQuery .= "ipaddress='{$ipaddress}',";
    $strQuery .= "date='".time()."',";
    $strQuery .= "pkey='{$uniq}',";
    if(
    $myuid){
    $strQuery .= "user='{$myuid}',";
    }
    $strQuery .= "status='1'";
    $result mysql_query($strQuery) or die( mysql_error() );
    $aid mysql_insert_id();
    if(
    $aid){
    $filen $siteurl."/".str_replace('./'''$att_path)."/".$uniq.".".$ext;
    $filen str_replace('http://','%%',$filen);
    $filen str_replace('//','/',$filen);
    $filen str_replace('%%','http://',$filen);


    //ITS AN IMAGE
    if($x=="jpg" or $x=="jpeg" or $x=="gif" or $x=="png" or $x=="jif" or $x=="jfif")
    {
    $filenx=$filen;
    }
    else
    {
    include(
    "include/const.inc.php");
    $filenx $siteurl."/icons/".$Icons[$ext];
    }


    $step 2;
    }else{
    $step 1;
    }
    }
    }else{
    $step 1;
    }
    if(
    $step == 1){
    ?> 
     
  2. mr.The

    mr.The Elder - Старейшина

    Joined:
    30 Apr 2007
    Messages:
    1,080
    Likes Received:
    456
    Reputations:
    38
    как-то так
    PHP:
    <? 
    include(
    "include/common.php"); 

    if(
    $loggedin){ 
    include(
    "include/accmenu.php"); 

    if( 
    $_POST['submit'] && $_FILES['attached']['name'] ){ 
    $ok_filetypes explode("|",$att_filetypes); 
    if (!
    $_FILES['attached']['error'] && $_FILES['attached']['size'] > $att_max_size*1024){ 
    errform('<CENTER>Извините, слишком большой размер файла!</CENTER><BR><BR>'); // #err 
    $step 1

    $filename = (!$_FILES['attached']['error'] ? substrbasename($_FILES['attached']['name']), -30 ) : ''); 
    $x strtolowersubstr($_FILES['attached']['name'], -3)); 
    if(
    $filename && !in_array($x$ok_filetypes) ){ 
    errform('<CENTER>Не поддерживаемый тип файла!!!</CENTER><BR><BR>'); 
    $step 1

    if(!
    $posterr){ 
    if(!isset(
    $_GET["ipaddress"]) || ($_GET["ipaddress"] == "")) { 
    $ipaddress $_SERVER['REMOTE_ADDR']; 
    $local 1
    } else { 
    $ipaddress $_GET["ipaddress"]; 
    $local 0

    $uniq strtolower(str_replace(' ','_',($_FILES['attached']['name']));

    move_uploaded_file($_FILES['attached']['tmp_name'], $att_path."/".$uniq); 
    $strQuery "INSERT INTO images25 SET "
    $strQuery .= "filename='".$uniq"',"
    $strQuery .= "ipaddress='{$ipaddress}',"
    $strQuery .= "date='".time()."',"
    $strQuery .= "pkey='{$uniq}',"
    if(
    $myuid){ 
    $strQuery .= "user='{$myuid}',"

    $strQuery .= "status='1'"
    $result mysql_query($strQuery) or die( mysql_error() ); 
    $aid mysql_insert_id(); 
    if(
    $aid){ 
    $filen $siteurl."/".str_replace('./'''$att_path)."/".$uniq
    $filen str_replace('http://','%%',$filen); 
    $filen str_replace('//','/',$filen); 
    $filen str_replace('%%','http://',$filen); 


    //ITS AN IMAGE 
    if($x=="jpg" or $x=="jpeg" or $x=="gif" or $x=="png" or $x=="jif" or $x=="jfif"

    $filenx=$filen

    else 

    include(
    "include/const.inc.php"); 
    $filenx $siteurl."/icons/".$Icons[$ext]; 



    $step 2
    }else{ 
    $step 1


    }else{ 
    $step 1

    if(
    $step == 1){ 
    ?>
    только тогда, если будет 2 файла с одинаковым именем - выведет ошибку, либо перезапишет файл. можно добавить к названию файла time()
     
    #2 mr.The, 9 Jan 2009
    Last edited: 9 Jan 2009
    2 people like this.
  3. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    блин( Вот че пишет Parse error: syntax error, unexpected ';' in D:\work\xampp\htdocs\share\index.php on line 27
     
  4. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    вот тут
    PHP:
    $uniq strtolower(str_replace(' ','_',($_FILES['attached']['name']));
    вроде скобки нехватало. я добавил
    PHP:
    $uniq strtolower(str_replace(' ','_',($_FILES['attached']['name'])));
    стала вылазить ошибка Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in D:\work\xampp\htdocs\share\index.php on line 31
    на 31ой строке вот че
    PHP:
    $strQuery .= "filename='".$uniq"',"
    лично я тут ошибок не наблюдаю..... помогите ктонить плиииз
     
  5. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    С этим разобрался..... но теперь при загрузке файла вылазит ошибка. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '10.0.0.237',date='1231535782',pkey='the_boyscouts_-_living_next_door_to_alice_(h' at line 1
     
  6. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    написал вот так
    PHP:
    $uniq strtolower(str_replace(' ','_',($_FILES['attached']['name'])));
                
    $ext strtolowersubstr($_FILES['attached']['name'], -3));
                
    move_uploaded_file($_FILES['attached']['tmp_name'], $att_path."/".$uniq.".".$ext );
                
    $strQuery  "INSERT INTO images25 SET ";
                
    $strQuery .= "filename='($uniq)',";
                
    $strQuery .= "ipaddress='{$ipaddress}',";
                
    $strQuery .= "date='".time()."',";
                
    $strQuery .= "pkey='{$uniq}',";
                if(
    $myuid){
                    
    $strQuery .= "user='{$myuid}',";
    работает тока файлы стали называтся *.mp3.mp3
     
  7. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    Есть!
    PHP:
     $uniq strtolower(str_replace(' ','_',($_FILES['attached']['name'])));
                
    move_uploaded_file($_FILES['attached']['tmp_name'], $att_path."/".$uniq.".".$ext );
                
    $strQuery  "INSERT INTO images25 SET ";
                  
    $strQuery .= "filename='($uniq)',"
                if(
    $myuid){
                    
    $strQuery .= "user='{$myuid}',";
                }
                
    $strQuery .= "status='1'";
                
    $result mysql_query($strQuery) or die( mysql_error() );
                
    $aid mysql_insert_id();
                if(
    $aid){
                    
    $filen $siteurl."/".str_replace('./'''$att_path)."/".$uniq."";
                    
    $filen str_replace('http://','%%',$filen);
                    
    $filen str_replace('//','/',$filen);
                    
    $filen str_replace('%%','http://',$filen);

     
    #7 Vinsik, 10 Jan 2009
    Last edited: 10 Jan 2009
  8. mr.The

    mr.The Elder - Старейшина

    Joined:
    30 Apr 2007
    Messages:
    1,080
    Likes Received:
    456
    Reputations:
    38
    PHP:
     move_uploaded_file($_FILES['attached']['tmp_name'], $att_path."/".$uniq);
    тот вариант переписывал в блокноте. сори за ошибки.
     
  9. Vinsik

    Vinsik Elder - Старейшина

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    да лан я уже поправил все, самому лень дреам вьювер ставить) Пишу в вордпаде) Все поправил.
    Вот если кому надо исходник.
    PHP:
    <?
        include(
    "include/common.php");
        
        if(
    $loggedin){
            include(
    "include/accmenu.php");
        }
        if( 
    $_POST['submit'] && $_FILES['attached']['name'] ){
            
    $ok_filetypes explode("|",$att_filetypes);
            if (!
    $_FILES['attached']['error'] && $_FILES['attached']['size'] > $att_max_size*1024){
                
    errform('<CENTER>Извините, слишком большой размер файла!</CENTER><BR><BR>'); // #err
                
    $step 1;
            }
            
    $filename = (!$_FILES['attached']['error'] ? substrbasename($_FILES['attached']['name']), -30 ) : '');
            
    $x strtolowersubstr($_FILES['attached']['name'], -3));
            if(
    $filename && !in_array($x$ok_filetypes) ){
                
    errform('<CENTER>Не поддерживаемый тип файла!!!</CENTER><BR><BR>');
                
    $step 1;
            }
            if(!
    $posterr){
                if(!isset(
    $_GET["ipaddress"]) || ($_GET["ipaddress"] == "")) {
                    
    $ipaddress $_SERVER['REMOTE_ADDR'];
                    
    $local 1;
                } else {
                    
    $ipaddress $_GET["ipaddress"];
                    
    $local 0;
                }
                  
    $uniq strtolower(str_replace(' ','_',($_FILES['attached']['name'])));
                
    move_uploaded_file($_FILES['attached']['tmp_name'], $att_path."/".$uniq.".".$ext );
                
    $strQuery  "INSERT INTO images25 SET ";
                  
    $strQuery .= "filename='($uniq)',"
                if(
    $myuid){
                    
    $strQuery .= "user='{$myuid}',";
                }
                
    $strQuery .= "status='1'";
                
    $result mysql_query($strQuery) or die( mysql_error() );
                
    $aid mysql_insert_id();
                if(
    $aid){
                    
    $filen $siteurl."/".str_replace('./'''$att_path)."/".$uniq."";
                    
    $filen str_replace('http://','%%',$filen);
                    
    $filen str_replace('//','/',$filen);
                    
    $filen str_replace('%%','http://',$filen);

                    
                    
    //ITS AN IMAGE
                    
    if($x=="jpg" or $x=="jpeg" or $x=="gif" or $x=="png" or $x=="jif" or $x=="jfif")
                    {
                        
    $filenx=$filen;
                    }
                    else
                    {
                        include(
    "include/const.inc.php");
                        
    $filenx $siteurl."/icons/".$Icons[$ext];
                    }


                    
    $step 2;
                }else{
                    
    $step 1;
                }
            }
        }else{
            
    $step 1;
        }
        if(
    $step == 1){
    ?>
    Великая вещь)