Могу ли я иметь несколько $ _GET с разными ключами и одинаковыми значениями?

У меня есть поиск по Интернету, но я не получил актуальное решение. То, что я нашел, этонесколько $ _GET с тем же ключом, разные значения?«но я хочу знать, что как можно установить другой ключ с тем же значением, как ?т = Helloworld&? Д = HelloWorld, Я знаю, что это возможно, но я не знаю, как это сделать. Кто-нибудь может мне помочь.

Итак, мой вопрос
Я хочу использовать www.omdbapi.com API и Google CSE вместе, где omdb нужен ключ ‘? T =’ и Google CSE нужно ‘? q =’ Я реализовал оба на www.moviesnight.club но это не работает, потому что я не могу продублировать значение ключа ‘? t =’ для ключа ‘? q =’.

0

Решение

Решение 1:

Вы должны сохранить значение параметра в переменной, чтобы проверить, какой ключ доступен в $_GET:

$queryValue = '';

// Fetch parameter for omdbapi
if(isset($_GET['t'])) {
$queryValue = $_GET['t'];
}

// Fetch parameter for Google CSE
if(isset($_GET['g'])) {
$queryValue = $_GET['g'];
}

// Optional:
if(empty($queryValue)) {
die('No parameter given.');
}

// Use the value stored in $queryValue

Решение 2: (Если у вас нет возможности использовать переменную типа $queryValue)

$_GET['g'] = isset($_GET['g']) ? : $_GET['t'];
$_GET['t'] = isset($_GET['t']) ? : $_GET['g'];
0

Другие решения

Я не нашел никакого решения, используя только PHP, поэтому JavaScript помог мне сделать это. Проверьте следующие фрагменты.

JavaScript

function changeText(containerId) {
var datatext = document.getElementById('omdbBox').value;
var collection = document.getElementById(containerId).getElementsByTagName('INPUT');
for (var x = 0; x < collection.length; x++) {
if (collection[x].type.toUpperCase() == 'TEXT') collection[x].value = datatext;
}
}

CSS

#cseBox {display: none;}

PHP (Чтобы распечатать представленный URL-адрес, вам не нужно использовать этот php-код при его использовании, он предназначен только для целей тестирования. Он убедится, что код работает.)

<?php
if(isset($_GET['search'])){
echo 'http://moviesnight.club/?<b>t='.$_GET['t'].'&q='.$_GET['q'].'</b>&search=';
}
?>

HTML

<form method="get">
<input id="omdbBox" type="text" autocomplete="off" name="t" onkeyup="changeText('cseBox')">
<div id="cseBox">
<input type="text" name="q">
</div>
<input type="submit" name="search">
</form>

Также проверьте вживую PhpFiddle

0

По вопросам рекламы [email protected]