Здравствуйте. Тестирую простенький сокращатель URL.
<?php
$h = "QqWwEeRrTtYyUuIiOoPpAaSsDdFfGgHhJjKkLlZzXxCcVvBbNnMm1234567890"; //Выбираем символы, из которых будет состоять наш рандом
$rand = substr(str_shuffle($h), 0, 5); //создаём ранд. Цифра 5 обозначает длину ранда
$site = "http://test.com/"; //Адрес сайта.
$url = $_POST['url'];
if ($_POST['submit']) {
echo "<div class='a'>
<a href='$site$rand'>$site$rand
</a>
</div>"; //выводим пользователю ссылку, в виде ссылки
$f = fopen("a/$rand.php", "w"); //Файл с именем ранда.
fwrite($f, "<?php header('Location: $url') ?>"); //И записываем в код редиректа, с ссылкой которую ввёл пользователь
fclose($f); //Закрываем файл
$fh = fopen(".htaccess", "a"); //Открываем файл .htaccess с дозаписью на последний байт
fwrite($fh, "
RewriteRule ^$rand$ /a/$rand.php"); //Записываем ссылку на файл в каталоге a и её сокращённый вариант, который был дан пользователю.
fclose($fh); //Закрываем файл
}
$connect->query("INSERT INTO `url` (`url`) VALUES ('$site$rand')");
?>
Как видите строчка
$connect->query("INSERT INTO `url` (`url`) VALUES ('$site$rand')");
отвечает за добавление url в БД.
БД:
-> id
->url
Проблема в том, что обновляя страницу появляются какие-то сокращённые url в бд сами по себе, а если ввести ссылку и сократить её она не добавиться в БД.
Уже пол дня мучаюсь, подскажите в чём проблема?