Повторяющиеся переменные, которые имеют в них - PullRequest
1 голос
/ 15 июля 2011

У меня есть эхо,

echo "<a href = 'showdetails.php?name='$name'&type=movie'> </a>";

, которое работает как намерение, но если, например,

$name = Gulliver's Travels;

, я получу Гулливера только на другой странице.

Есть ли способ обойти это?

Спасибо,

Зенши.

Ответы [ 2 ]

5 голосов
/ 15 июля 2011

Есть много символов, которые не принадлежат URL-адресам, поэтому закодируйте их все правильно:

echo '<a href="showdetails.php?name=' . urlencode($name) . '&type=movie"> </a>';

Значение href должно быть заключено в двойные кавычки, а не в одинарные, так как одинарные кавычки допускаются в URL, а двойные - нет.

http://php.net/manual/en/function.urlencode.php

Если бы вы помещали это в любой другой тип вывода HTML, кроме ссылки, вы бы хотели использовать htmlspecialchars .

0 голосов
/ 15 июля 2011

Я бы выбрал urlencode , потому что вы используете его как часть URL:

echo "<a href = 'showdetails.php?name=".urlencode($name)."&type=movie'> </a>";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...