So, what you want is a function foo() and its inverse foo'() that does this:
foo( "some long string" ) --> 1234
foo'( 1234 ) --> "some long string"
Correct?
In other words, you want to keep the entire information content of the original string.
There are only two ways to do this:
- keep the original string, i.e. store it in a database of some sort, or
- lossless compression of the original string into a short number. While theoretically possible, the compression ratio you're asking for isn't going to be possible.
Which leaves the first option, as plenty of people here have described.
So:
You've said you already have a database with a column that stores a 4-digit number.
If that database table doesn't already have a column that stores the HTML page's absolute path, then add one.
You'll also want a UNIQUE constraint on the column with the number (and/or the other column, depending on your database design).
The rest is "just" SQL...
|