Валидация URL ??? Помогите начинающему

301
10 мая 2017, 10:06

Привет завсегдатаям и не очень. Я Абсолютный новичок и нуб в программировании, но на ж когда то начинать. Сегодня изучаю PHP.

Вот такая задача: Пользователь может оставлять в базе данных 2 типа ссылок. 1 ссылка на какой либо ресурс (именно сайт, блог, форум и тд) 2 ссылка на изображение ( баннер, картинка, скриншот и тп.)

Мне необходимо проверить валидность этих ссылок, что за первой находится именно реальный сайт, блог, форум и тд за второй именно изображение, (расширения в принципе можно Ограничить конкретными gif, png и jpeg...

По сути я пытаюсь защититься от нехорошего пользователя, который по приколу решит поломать моё детище, отправив в БД какую нить заразу. Дело в том, что эти ссылки и картинки будут видеть другие пользователи, за их безопасность я беспокоюсь как за свою )))).

Прошу бывалых поддержать меня готовым семплом php кода, за что буду безмерно благодарен.

Вот что имею в чистом виде без валидации:

//<!-- Ссылки на ресурс banURL1 + изображение banIMG1 -->
if ($_POST['banURL1'] != '') {
    if (isset($_POST['banURL1'])) {
        $banURL1 = $_POST['banURL1'];
        if ($banURL1 ==   '') { 
            unset($banURL1);
        }
    }
    mysql_query (" UPDATE `users` SET `banURL1` = '$banURL1' WHERE `users`.`user` = '".$_SESSION['userin']."';") ;  
    if ($_POST['banIMG1'] != '') {
    }
    if (isset($_POST['banIMG1'])) {
        $banIMG1 = $_POST['banIMG1'];
        if ($banIMG1 == '') {
            unset($banIMG1);
        }
    }
    mysql_query (" UPDATE `users` SET `banIMG1` = '$banIMG1' WHERE `users`.`user` = '".$_SESSION['userin']."';") ;  
}
//<!-- КОНЕЦ -->
Answer 1

Для валидации данных в PHP предусмотрены встроенные функции. http://php.net/manual/ru/filter.filters.validate.php

    <?php
    $url = "https://www.w3schools.com";
    if (filter_var($url, FILTER_VALIDATE_URL)) {
       echo("$url валидный");
    } else {
       echo("$url не валидный");
    }
    ?>
READ ALSO
Invalid pointer addition

Invalid pointer addition

Не понимаю, в одном проекте такой кусок кода работал с БД MSSQL, а здесь выдает ошибку, что в том проекте, я объявил глобальную переменную, что...

366
Библиотека не зарегистрирована. visual studio 2015

Библиотека не зарегистрирована. visual studio 2015

Подскажите, пожалуйста, кто сталкивался, что делать? О какой библиотеке идет речь?

420
Шаблоны std::function со сложными типами

Шаблоны std::function со сложными типами

Всем приветИмеется программа моделирующая поведение системы n-тел во времени

451