Ich habe Probleme mit der Weitergabe von URLs als GET-Parameter. Wenn ich versuchen, zuzugreifen:Wie URL in URL (als GET-Parameter) mit PHP übergeben?
http://www.linkebuy.com.br/linkebuy/parceiro?url=http%3A%2F%2Fwww.google.com
ich die folgende Meldung:
Allerdings, wenn ich gehen für:
http://www.linkebuy.com.br/linkebuy/parceiro?url=123
Alles funktioniert gut (es leitet zu einer inexistenten Site um - 123 - natürlich, aber es tut das erwartete). Durch Eliminierung kann ich sagen, dass etwas mit dem Parameter url
nicht stimmt, aber was ist das?
OBS: Ich verwende rawurlencode()
, um die URL zu kodieren.
EDIT:-Code Sie gefragt ...
In der ersten Ansicht, wo der Link (http://www.linkebuy.com.br/notebook/detalhe?id=5):
<!-- url() function just completes the right URL (production or development) -->
<a href="<?php echo url('linkebuy/parceiro/?url=' . rawurlencode($l->getUrl()), true) ?>" class="<?php echo $leadClass ?> oferta" target="_blank">
<?php echo $l->getNomeFantasia() ?>
</a>
Beim Anklicken der Link auf eine Aktion umleitet (/linkebuy/parceiro
), wo passiert Folgendes (im Grunde nichts, nur im Rahmen halten):
public function execute($request, $response) {
$response->addParameter('url', rawurldecode($request->getParameter('url', ''))); //This creates $url in the view
$response->setTemplate('site/linkebuy/lead-parceiro.php'); //Forwards to the view
}
Es umfasst die Ansicht, lead-parceiro.php
(oben auf die Frage, verlinke ich auf dieser Seite), wo der Kopf enthält:
<script type="text/javascript">
setInterval(function(){ window.location = '<?php echo $url ?>'; },3000);
</script>
Verwenden Sie einfache 'urlencode()' und sagen Sie uns passieren, wenn das einen Unterschied macht. –
Kein Unterschied. – ramonztro
Das Problem ist in Ihrer Redirect-Funktion .... zeigen Sie uns den Code;) – Hackerman