URL скрипта Php со специальными символами

У меня есть этот PHP-код на странице WordPress

$str = 's.aspx?sm=Q830I7SJZvuSP3HzDfFlVA%3d%3d';

printf('<a href="https://www.surveymonkey.com/.urlencode($str)." target="_blank">
<img src="http://www.anyfood.gr/net/wp-content/uploads/2014/12/evaluation2.jpg" style="padding:20px;">
</a>'
);

но ссылка не работает, я пробовал несколько возможных трюков, используя одинарные кавычки и т. д.
но я не могу понять … Есть идеи?

3

Решение

Как правило, вам не придется использовать urldecode() при доступе GET параметры. Используйте его следующим образом:

$str = 's.aspx?sm=' . urlencode ('Q830I7SJZvuSP3HzDfFlVA%3d%3d');

echo '<a href="https://www.surveymonkey.com/'.$str.'" target="_blank">
<img src="http://www.anyfood.gr/net/wp-content/uploads/2014/12/evaluation2.jpg" style="padding:20px;">
</a>';
2

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

Попробуйте это, это сработало для меня:

<?php
$str = 's.aspx?sm=Q830I7SJZvuSP3HzDfFlVA%3d%3d';

printf('<a href="https://www.surveymonkey.com/%1$s " target="_blank"> <img src="http://www.anyfood.gr/net/wp-content/uploads/2014/12/evaluation2.jpg" style="padding:20px;"> </a>', urlencode($str));
?>
1

$str = 's.aspx?sm=Q830I7SJZvuSP3HzDfFlVA%3d%3d';

printf('
*<*a href="https://www.surveymonkey.com/".urlencode($str) target="_blank">
*<*img src="http://www.anyfood.gr/net/wp-content/uploads/2014/12/evaluation2.jpg" style="padding:20px;">
</a>
');

** удалите * в начале тега привязки и тега изображения **

1

$str = 's.aspx?sm=Q830I7SJZvuSP3HzDfFlVA%3d%3d';

printf('< a href="https://www.surveymonkey.com/%s" target="_blank">
<img src="http://www.anyfood.gr/net/wp-content/uploads/2014/12/evaluation2.jpg" style="padding:20px;">
</ a>', urlencode($str));

Проверь это.

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