Я пытаюсь использовать скрипт Premium URL Shortener от codecanyon, я обратился за поддержкой, но они, кажется, немного заняты, поэтому время ответа не слишком быстрое.
Проблема, с которой я сталкиваюсь, заключается в том, что API отправляет запрос скрипту сокращения URL-адресов со следующим сокращенным запросом для примера:
$short = "http://myurl/api?api=MYAPI&format=text&url=http://myfullwebsite.com/email/quote.php?fullname=$fullname&address=$address&emailaddress=$emailaddress";
Хотя переменные правильно размещаются в скрипте, используя функцию эха в конце скрипта, после отправки запроса API видно, что они правильно вставлены, например:
http://myurl/api?api=MYAPI&format=text&url=http://myfullwebsite.com/email/quote.php?fullname=Dan Smith&address=12 Main Street, London&[email protected]
Однако, если я щелкну сокращенный URL-адрес, предоставленный мне из сценария, я получу только следующую строку URL-адреса в браузере:
http://myfullwebsite.com/email/quote.php?fullname=Dan
Кажется, как только есть пробел или даже если нет второго имени, такого как Дэн Смит, и только Дэн является доступным именем, он даже не будет применять второй амперсанд или знак &.
Я пытался использовать urlecode()
, но до сих пор не получаю удовольствия, и последние 3 дня я рву на себе волосы!
Как начинающему новичку, было довольно сложно попытаться достичь конечного результата, и он кажется недостижимым, поэтому я был бы признателен за любую помощь или совет, если это возможно. Может быть, я упускаю что-то такое простое?
Я думал о построении запроса URL-адреса из массива переменных, но как новичок я пробовал один способ и потерпел неудачу, поэтому не уверен, что сделал это неправильно.
Вот мой полный код API, где я пробовал как с SESSION
, так и с GET
, но это не проблема, так как конечный результат отображается в браузере с переменными там.. только когда вы переходите по сокращенной ссылке URL, вы видите, что они отсутствующий.
<?php
session_start();
$fullname = htmlspecialchars($_GET["fullname"]);
$address = htmlspecialchars($_GET["address"]);
$postcode = htmlspecialchars($_GET["postcode"]);
$emailaddress = htmlspecialchars($_GET["emailaddress"]);
$short = "http://myurl/api?api=MYAPI&format=text&url=http://ukhomesurveys.co.uk/email/quote.php?fullname=$fullname&address=$address&emailaddress=$emailaddress";
echo $short;
// Using Plain Text Response
$api_url = $short;
$res= @file_get_contents($api_url);
if($res){
echo $res;
}
?>
Надеюсь, я все рассказал и надеюсь, что никого не запутал. Спасибо.