Отправка переменных в URL-адресах в PHP с помощью эха

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

echo "<a href = \"movies.php/?movie_id='$row['movie_id']'\"> Who Owns It? </a> "; 

и это ошибка, которую я получаю:

 Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING 

Как исправить эту ошибку?

Кроме того, каковы некоторые общие рекомендации по работе с эхом и переменными в URL-адресах?

Solutions Collecting From Web of "Отправка переменных в URL-адресах в PHP с помощью эха"

 echo "<a href = \"movies.php/?movie_id='$row['movie_id']'\"> Who Owns It? </a> "; 

Здесь есть две вещи, которые нужно изменить. Во-первых, не должно быть / after movies.php. Во-вторых, нет никаких апострофий вокруг переменных URL. Это должно быть movie_id = $ row ['movie_id']. Всякий раз, когда я использую переменную php, я обычно контактирую ее вместо того, чтобы вставлять ее в цитаты. Поэтому, в конце концов, я бы сделал что-то вроде этого:

 echo "<a href=\"movies.php?movie_id=" . $row['movie_id'] . "\"> Who Owns It? </a>"; 

$row['movie_id'] внутри строки с двойными кавычками недопустима (особенно одинарные кавычки). Либо написать его без ' либо использовать синтаксис фигурных фигурных скобок:

 echo "<a href = \"movies.php/?movie_id='$row[movie_id]'\"> Who Owns It? </a> "; echo "<a href = \"movies.php/?movie_id='{$row['movie_id']}'\"> Who Owns It? </a> "; 

См. Разбор переменных для получения дополнительной информации.

Это лучший способ:

 $movie_id = urlencode($row["movie_id"]); echo '<a href="movies.php/?movie_id=', $movie_id, '"> Who Owns It? </a> '; 

Удачи!

Это лучший (er) способ:

 $movie_id = urlencode($row["movie_id"]); echo "<a href=\"movies.php?movie_id={$movie_id}\"> Who Owns It? </a> "; 

Легче читать. Кроме того, одно-и двухцилиндровая скорость больше не является проблемой.

Эхо или URL-адреса не имеют ничего общего с вашей проблемой. Это синтаксис строк PHP .