Я не могу загрузить переменные в базу данных - PullRequest
0 голосов
/ 24 апреля 2020

Я пытался загрузить видео имена файлов и другие переменные в базу данных, но оператор вставки не работает. В любом случае видеофайл-имя и thumbnail-filename загружаются в нужные папки. Я проверил, и нет ничего плохого в утверждении sql. Но почему это не сработает, может кто-нибудь сказать мне?

PHP код

<?php

    session_start();

if (isset($_POST['submit'])) {

    $videoName = $_POST['videoName'];
    $videoDesc = $_POST['description'];
    $category = $_POST['category'];
    $level = $_POST['level'];
    $userId = $_SESSION['userId'];

    $videoFile = $_FILES["videoFile"];
    $videoFileName = $videoFile['name'];
    $videoFileType = $videoFile['type'];
    $videoFileTempName = $videoFile['tmp_name'];
    $videoFileError = $videoFile['error'];

    $videoFileExt = explode(".", $videoFileName);
    $videoFileActualExt = strtolower(end($videoFileExt));
    $videoAllowed = array("mp4", "mov", "avi");

    $thumbFile = $_FILES["thumbnail"];
    $thumbFileName = $thumbFile["name"];
    $thumbFileType = $thumbFile["type"];
    $thumbFileTempName = $thumbFile["tmp_name"];
    $thumbFileError = $thumbFile["error"];

    $thumbFileExt = explode(".", $thumbFileName);
    $thumbFileActualExt = strtolower(end($thumbFileExt));
    $thumbAllowed = array("jpg", "jpeg", "png");





    if (in_array($videoFileActualExt, $videoAllowed)) {
        if(in_array($thumbFileActualExt, $thumbAllowed)) {
            if ($videoFileError === 0) {
                if ($thumbFileError === 0) { 

                            $videoFullName = $videoFile . "." . uniqid("", true) . "." . $videoFileActualExt;
                            $videoFileDestination = "../video/" . $videoFullName;

                            $thumbFullName = $thumbFile . "." . uniqid("", true) . "." . $thumbFileActualExt;
                            $thumbFileDestination = "../thumbnail/" . $thumbFullName;


                            include 'dbh.inc.php';

                            if(empty($videoName) or empty($videoDesc)) {
                                header("Location: ../uploadVideo.php?upload=empty");
                                exit();
                            } else {
                                    move_uploaded_file($videoFileTempName, $videoFileDestination);
                                    move_uploaded_file($thumbFileTempName, $thumbFileDestination);

                                $sql = "INSERT INTO video (filnavn, thumbnail, videoName, descript, idMusician, categoryName, idLevel) VALUES ('$videoFullName', '$thumbFullName', '$videoName', '$videoDesc', $userId, '$category', $level);";
                                mysqli_query($conn, $sql);

                                    header("Location: ../uploadVideo.php?upload=success");
                                    exit();
                                }

                } else {
                    echo "You had a thumbnail error!";
                    exit();
                }
            } else {
                echo "You had a video error!";
                exit();
            }
        } else {
            echo "You need to upload a proper thumbnail file type";
            exit();
        }
    } else {
        echo "You need to upload a proper video file type!";
        exit();
    }
} else {

}

1 Ответ

0 голосов
/ 24 апреля 2020

Вы не можете вставить or таким образом в условие if(), вы всегда должны использовать логический оператор как

 if(empty($videoName) || empty($videoDesc))

Из-за этого выполнение кода должно быть остановлено в этой точке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...