www.webdeveloper.com
Results 1 to 2 of 2

Thread: Renaming file on upload if exists

  1. #1
    Join Date
    Jul 2005
    Posts
    5

    Question Renaming file on upload if exists

    I bought this program which works fine as it is right now. The only problem is the scri[pt will automatically over write existing files without renaming it to something else. So what I need is for someone to help me have this script rename a image file on upload if it exists already. And also to make sure the sql part inserts new renamed code. I'm only a beginner and I've tried all the rename & str_replace codes but I keep getting error. Please help

    Here is original code:
    Code:
    <?
    	include("include/common.php");
    
    	if(!$loggedin){
    		ob_start();
    		header("Location: login.php");
    	}
    	include("include/header.php");
    	include("include/accmenu.php");
    
    	if($submit){
    		if($_POST['delimg']){
    			mysql_query("UPDATE bio SET imagefile='' WHERE user='$myuid'");
    			if(file_exists("./uploads/".$_POST['delimg']))@unlink("./uploads/".$_POST['delimg']);
    		}
    
    		if($oid){
    			$sql = "UPDATE bio SET aboutme='$caboutme',contact='$ccontact'";
    			if( $_FILES['image']['name'] ){
    				$sql .= ",imagefile='".$_FILES['image']['name']."'";
    			}
    			$sql .= " WHERE user='$myuid'";
    
    		}else{
    			$sql = "INSERT INTO bio SET aboutme='$caboutme',contact='$ccontact',user='$myuid'"; 
    			if( $_FILES['image']['name'] ){
    				$sql .= ",imagefile='".$_FILES['image']['name']."'";
    			}
    		}
    		mysql_query($sql) or die( mysql_error()."<br>$sql<bR>" );
    		if(!$oid){
    			$oid = mysql_insert_id();
    		}
    		if( $_FILES['image']['name'] ){
    			if($_POST['oldimg'])unlink("./uploads/".$_POST['oldimg']);
    			$match=0;
    			$sent=move_uploaded_file($_FILES['image']['tmp_name'], "./uploads/".$_FILES['image']['name']);
    			if(!$sent){
    				echo ("<script>window.alert('File upload has failed.');</script>");
    			}else{
    				echo ("<script>window.alert('File upload of file type $type was sucessfull');</script>");
    			}
    		}		
    ?>
    		<h3>Edit your Bio</h3>
    		<form method=post ENCTYPE="multipart/form-data">
    		<?=$table2?>
    		<tr align=center>
    			<td colspan=2>Your Bio has been saved.</td>
    		</tr>
    <?
    		echo "</table>";
    	}else{
    		$this->c=mysql_query("select * from bio where user='$myuid'");
    		$this->d=mysql_fetch_object($this->c);
    		if(is_object($this->d)) {
    			$cid = $this->d->id;
    			$caboutme = $this->d->aboutme;
    			$ccontact = $this->d->contact;
    			$imagefile = $this->d->imagefile;
    		}
    ?>
    		<h3>Edit your Bio</h3>
    		<form method=post ENCTYPE="multipart/form-data">
    <?		if($cid)echo "<input type='hidden' name='oid' value='$cid'";	?>
    		<?=$table2?>
    		<tr>
    			
        <td colspan=2>
    <table width="500" border="0" cellspacing="0" cellpadding="2">
            <tr> 
              <td colspan="2">Edit your Bio and then click the submit button below. 
              </td>
            </tr>
            <tr> 
              <td width="322">About me:</td>
              <td width="170"><textarea name=caboutme cols=50 rows=10><?=$caboutme?></textarea></td>
            </tr>
            <tr> 
              <td>My Image:</td>
              <td><input name="image" type="file">
                <?
    	if($imagefile){
    		echo "&nbsp; 
    			<input type=hidden name=oldimg value='$imagefile'> 
    			<input type=checkbox class=checkbox name=delimg value='$imagefile'> 
    			Delete image (<a href='$siteurl/uploads/$imagefile","' target=_blank>See current</a>)";
    	}
    ?>
              </td>
            </tr>
            <tr> 
              <td>&nbsp;</td>
              <td><input type=submit name=submit value='Submit Changes'></td>
            </tr>
            <tr> 
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
          </table>
    
    </form>
    <?
    	}
    	include("include/footer.php");
    ?>
    Last edited by makesnocents; 07-23-2005 at 07:28 AM.

  2. #2
    Join Date
    Jul 2005
    Posts
    5

    Question so far....

    OK ..so I fgured out how to get the file renamed by changing
    Code:
    $sent=move_uploaded_file($_FILES['image']['tmp_name'], "./uploads/".$_FILES['image']['name']);
    to
    Code:
    $new_file = substr(sha1(rand(10, time())), 0, 8) . '.' . jpg;
    $sent=move_uploaded_file($_FILES['image']['tmp_name'], "./uploads/".$new_file);
    ...But I'm still having problems on getting that renamed file to be inserted into SQL table

    Help please!!!!!!!!

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center

"

"

X vBulletin 4.2.2 Debug Information

  • Page Generation 0.13121 seconds
  • Memory Usage 2,839KB
  • Queries Executed 13 (?)
More Information
Template Usage (33):
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_global_above_footer
  • (1)ad_global_below_navbar
  • (1)ad_global_header1
  • (1)ad_global_header2
  • (1)ad_navbar_below
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)ad_thread_first_post_content
  • (1)ad_thread_last_post_content
  • (3)bbcode_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)headinclude_bottom
  • (2)memberaction_dropdown
  • (1)navbar
  • (4)navbar_link
  • (1)navbar_moderation
  • (1)navbar_noticebit
  • (1)navbar_tabs
  • (2)option
  • (2)postbit
  • (2)postbit_onlinestatus
  • (2)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available (6):
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files (26):
  • ./showthread.php
  • ./global.php
  • ./includes/class_bootstrap.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/functions_navigation.php
  • ./includes/class_friendly_url.php
  • ./includes/class_hook.php
  • ./includes/class_bootstrap_framework.php
  • ./vb/vb.php
  • ./vb/phrase.php
  • ./includes/functions_facebook.php
  • ./includes/functions_calendar.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_notice.php
  • ./packages/vbattach/attach.php
  • ./vb/types.php
  • ./vb/cache.php
  • ./vb/cache/db.php
  • ./vb/cache/observer/db.php
  • ./vb/cache/observer.php 

Hooks Called (70):
  • init_startup
  • friendlyurl_resolve_class
  • init_startup_session_setup_start
  • database_pre_fetch_array
  • database_post_fetch_array
  • init_startup_session_setup_complete
  • global_bootstrap_init_start
  • global_bootstrap_init_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • load_show_variables
  • load_forum_show_variables
  • global_state_check
  • global_bootstrap_complete
  • global_start
  • style_fetch
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • strip_bbcode
  • friendlyurl_clean_fragment
  • friendlyurl_geturl
  • forumjump
  • cache_templates
  • cache_templates_process
  • template_register_var
  • template_render_output
  • fetch_template_start
  • fetch_template_complete
  • parse_templates
  • fetch_musername
  • notices_check_start
  • notices_noticebit
  • process_templates_complete
  • friendlyurl_redirect_canonical
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • memberaction_dropdown
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • build_navigation_data
  • build_navigation_array
  • check_navigation_permission
  • process_navigation_links_start
  • process_navigation_links_complete
  • set_navigation_menu_element
  • build_navigation_menudata
  • build_navigation_listdata
  • build_navigation_list
  • set_navigation_tab_main
  • set_navigation_tab_fallback
  • navigation_tab_complete
  • fb_like_button
  • showthread_complete
  • page_templates