WeberDev.com PHP and MySQL Code

LOG IN
BEGINNER GUIDES  |  PHP CLASSES  |  CODE SEARCH  |  ARTICLES SEARCH  |  PHP FORUMS  |  PHP MANUAL  |  PHP FUNCTIONS LIST  |  WEB SITE TEMPLATES
Start typing to search for PHP and MySQL Code Snippets and Articles Search
Submit a code Example / Snippet Submit Your Code
Search Engine Optimization Monitor SEO Monitor
Web Site UpTime Monitor UpTime Monitor
WeberDev's Monthly code contest PHP Code Contest
Your Personal Examples List My Favorite Examples
Your Personal Articles List My Favorite Articles
Edit Account Info Update Your Profile
PHP Code Search
Web Development Forums
Learn MySQL Playing Trivia
PHPBB2 Templates
Web Development Index
PHP Web Logs (BLogs)
Web Development Resources
Web Development Content
PHPClasses
PHP Editor
PHP Jobs
Vision.To Design
Ajax Tutorials
PHP Programming Help
PHP/MySQL Programming
Webmaster Resources
Webmaster Forum
XML meta language
website builder
Submit Site
Forex Trading Online forex trading platform

Go Back Add a Comment Send this example to a friend Add this Article to your personal favoritest for easy future access to your favorite Code Examples and Articles. Submit a code example Print this code example.
BACK ADD A COMMENT SEND TO A FRIEND ADD TO MY FAVORITES ADD CODE EXAMPLES PRINT
Title : Creating safe unique filenames
Categories : PHP, Filesystem Update Picture
Simon Booth
Date : Feb 19th 2003
Grade : 3 of 5 (graded 3 times)
Viewed : 6077
File : No file for this code example.
Images : No Images for this code example.
Search : More code by Simon Booth
Action : Grade This Code Example
Tools : My Examples List

  Submit your own code examples 
 

It's useful to be able to create unique filenames once
in a while.

If you want good portability so your code will work on
a Windoze box as well as a Linny server then you get
stuffed by not being able to access the PID of the
server process - this is the root of many unique
file naming systems.

Below is a little function that works on anything that
runs PHP.

The idea here is to get the IP of the remote client and
use that as the basis of a unique filename. There is a
possible problem in that of the remote is using a shared,
NAT, Internet feed then you can quite conceivably get
multiple requests that would end up with the same IP.

If we also use the current microtime() then the chances
of two requests generating the same unique become as
close to zero as you can get.
<?php
function unique_filename($xtn = ".tmp")
  {
 
// explode the IP of the remote client into four parts
 
$ipbits = explode(".", $_SERVER["REMOTE_ADDR"]);
 
// Get both seconds and microseconds parts of the time
 
list($usec, $sec) = explode(" ",microtime());

 
// Fudge the time we just got to create two 16 bit words
 
$usec = (integer) ($usec * 65536);
 
$sec = ((integer) $sec) & 0xFFFF;

 
// Fun bit - convert the remote client's IP into a 32 bit
  // hex number then tag on the time.
  // Result of this operation looks like this xxxxxxxx-xxxx-xxxx
 
$uid = sprintf("%08x-%04x-%04x",($ipbits[0] << 24)
         | (
$ipbits[1] << 16)
         | (
$ipbits[2] << 8)
         |
$ipbits[3], $sec, $usec);

 
// Tag on the extension and return the filename
 
return $uid.$xtn;
  }
?>



Random Image Display
Categories : PHP, Filesystem, Graphics, HTML and PHP
PHP based Contact email form with multiple recipients, text file based, supports departments.
Categories : PHP, Email, Beginner Guides, Filesystem
The toll booth
Categories : PHP, Java Script, Filesystem
php jump urls...the best way
Categories : PHP, URLs, Filesystem
Simple way to replace a variable value in a .conf (.ini) file using a webbrowser - the first stage of a complete universal configuration editor
Categories : PHP, Regexps, Code Editors, Filesystem
Display list of files within current and subdirectories (recursively) showing each file as an anchored link and each directory as a category header.
Categories : Filesystem, Directories, Arrays, PHP
File Explorer, browse, upload, download and edit your web site files with only a browser and a HTTP connection.
Categories : Complete Programs, Content Management, Filesystem, PHP
GuestBook Light - a plug and play application for any website.
Categories : PHP, Complete Programs, Filesystem, Sessions
Remote File Saving with PHP - Download and serve a remote file. The content of the file will be updated at fixed intervals.
Categories : PHP, Filesystem, Cache, Sockets, HTTP
JSON File Upload
Categories : PHP, AJAX, Filesystem
Get the correct extension and MIME types of an image, even when the filename is incorrect.
Categories : PHP, Filesystem, General SQL
Read DPI value from image with PHP
Categories : PHP, Graphics, Filesystem
Simple pipe delimited file export program that downloads to a local machine
Categories : PHP, Filesystem, Databases, MySQL, HTTP
Single-file PHP news system with automatic folder structure creation
Categories : PHP, Filesystem, Arrays
Recursive function to move files on a filesystem. It can be minor changed in order to copy recursively.
Categories : PHP, Filesystem, Algorithms