Я хочу изменить длину сокращенного идентификатора в PHPurl

0

Я установил PHPurl URL shortener (от http://blondish.net/resources/scripts/phpurl/) на свой сайт и настроил его на стиль моего сайта.

Все работает нормально, за исключением того, что он генерирует идентификатор URL, добавляя по одному номеру каждый раз. Например: http://)jpine.co.uk/1, затем http://jpine.co.uk/2

Я хочу, чтобы он немного походил на bit.ly и имел. http://jpine.co.uk/42t8hnf - случайное сгенерированное число. Я не уверен, как это сделать, но я уверен, что он вычисляет его в файле create.php. Здесь он находится ниже:

<?
include("config.php");
if (strstr($_SERVER['HTTP_REFERER'], $root));
else { header ("Location: $rooturl"); }

$ip = $_SERVER['REMOTE_ADDR'];
$url = mysql_real_escape_string($_POST['url']);

if(preg_match('|^http(s)?://[a-z0-9-]+(\.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $url)) {
    if (empty($_POST['tag'])) {
        $query = mysql_query("INSERT INTO $table (ip,url) VALUES ('$ip','$url')") or die('MySQL error: '.mysql_error());
        $qs = mysql_insert_id();
    } else {
        if (ereg('^[a-zA-Z0-9]+[a-zA-Z0-9]+$', $_POST['tag'])) {
            $tag = mysql_real_escape_string($_POST['tag']);
            $query = mysql_query("select * from $table where `tag` = '$tag';") or die('MySQL error: '.mysql_error());
            if (mysql_num_rows($query) != 0)
                die("This tag has already been used! Please press back button on your browser and choose another tag!");
            else {
                $query = mysql_query("insert $table (ip,url,tag) VALUES ('$ip','$url','$tag')") or die('MySQL error: '.mysql_error());
                $qs = $tag;
            }
        } else
            die('Your tag contains invalid characters! Only alphabets and numbers allowed! Please press back button on your browser and choose another tag!');
    }
    $link = $destination . $qs;
    require 'create_template.php';
} else
    echo 'URL is invalid';

?>
Теги:
url
short

2 ответа

0

Вы можете попробовать это, как описано здесь: короткий идентификатор, например YouTube или Tinyurl.

0

Не так просто. Вам нужно изменить множество вещей и базы данных.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню