Доброе утро
Я изо всех сил пытался работать вокруг этого недавно, так как я довольно плохо знаком с PHP & MySQL в целом. У меня есть база данных с таблицей «видео», в которой я храню полезную информацию о видео, и у меня есть документ с именем search. php, который будет отображать определенные c видео на основе запроса GET. Запрос выглядит так:
http://example.ex/search.php?tag=EXAMPLE1
Лог c будет хранить значение тега следующим образом:
if(!empty($_GET["tag"])){
// Get videos from tag only
$curTag = strval($_GET["tag"]);
displayByTag($curTag); //the function that parse the database
}
У меня готово соединение:
$server = "localhost";
$username = "root";
$password = "";
$db = "mydatabase";
$conn = mysqli_connect($server, $username, $password, $db);
$query = "SELECT * FROM videos";
$response = array();
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_array($result)) {
$response[] = $row;
}
Технически на данный момент моя таблица хранится внутри $response[].
Что мне нужно сделать, это проанализировать базу данных и найти столбец «теги», разделить его строковое значение («EXAMPLE1, EXAMPLE2, ПРИМЕР 3 "в таблице), а затем посмотреть, соответствует ли значение GET одному из них.
Вот когда мне понадобится ваша помощь. Я понимаю логику c, шаги, но не могу "перевести" ее в PHP. Вот что я бы сделал (на человеческом языке):
function displayByTag($tag) {
for each $video-item inside $array {
$tagsArray = explodes(",", $video-item[tags-column]); //That's how I split the tags stored inside the table
for i as integer = 0 to $tagsArray.length {
if $tagsArray(i) == $tag {
//THATS A MATCH
}
}
}
}
Это правильный способ сделать это? И как я могу перевести этот "человеческий" язык в PHP код?
Спасибо за помощь.