Как я могу получить идентификатор изображения после нажатия на него? - PullRequest
0 голосов
/ 20 февраля 2019

Я нахожусь в середине проекта.Я сохранил изображения, чтобы быть миниатюрами для соответствующего видео.Я не хочу показывать видео, для которого предназначена миниатюра, после нажатия на изображение.Однако, когда пользователь переносится на следующую страницу, я получаю сообщение об ошибке:

Уведомление : неопределенный индекс: v_id

v_id существуетв таблице видео (которая также хранит изображения и названия видео), поэтому я не понимаю, почему я получаю эту ошибку.Ниже watchScreen.php,

$v_id = $_SESSION['v_id'];
$query=mysqli_query($link, "SELECT video_name FROM video WHERE v_id='$v_id'");
while($my_video=mysqli_fetch_array($query)){
?>
<video width="60%" height="60%" style="background-color:#585858; border: 4px solid darkorange; border-radius:20px;" controls>
<source src="uploads/<?php echo $my_video['video_name']; ?>" type="video/mp4">
</video>
<?php } ?>

ниже, где изображение кликнуло,

if(isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] == true){
$query=mysqli_query($link, "SELECT * FROM video ORDER BY RAND() LIMIT 5");
while($all_video=mysqli_fetch_array($query)){
?>
<a href="watchScreen.php"><image src="thumbnails/<?php echo $all_video['image_name']; ?>" width="300" height="200"></a>
<?php } } ?>

ниже код mySQL,

CREATE TABLE video(
v_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
video_name VARCHAR(225) NOT NULL,
id INT NOT NULL,
FOREIGN KEY user_id(id)
REFERENCES users(id)
ON DELETE CASCADE,
n_views INT,
image_name VARCHAR(225) NOT NULL
);

Видеои имена изображений добавляются на третью страницу, например,

mysqli_query($link, INSERT INTO video(video_name, id, image_name) VALUES('$video_path', '$id', '$image_path'))

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Попробуйте удалить кавычки из $ v_id;

Попробуйте:

"SELECT video_name FROM video WHERE v_id= $v_id";
0 голосов
/ 20 февраля 2019

Я не использую сеанс для сохранения или передачи данных с одной страницы на другую.В вашем случае вы должны передать идентификатор видео в качестве параметра в ссылке, например.

<a href="watchScreen.php?video=1">video image </a>

Затем на watchScreen.php вы должны получить идентификатор видео.

<?php

$v_id = $_GET['v_id'];
if(!is_numeric($v_id)){
   header("redirect: previouspage.php");
   exit();
}

// we validated, now we can do the query.

$query=mysqli_query($link, "SELECT video_name FROM video WHERE v_id='$v_id'");
while($my_video=mysqli_fetch_array($query)){
?>
<video width="60%" height="60%" style="background-color:#585858; border: 4px solid darkorange; border-radius:20px;" controls>
<source src="uploads/<?php echo $my_video['video_name']; ?>" type="video/mp4">
</video>
<?php } ?>

hope it helps.



...