Ajuda com caracteres em variável

  • Autor Autor libreman
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
libreman

libreman

1
Iota
Verificación en dos pasos activada
Suscripción a IA
Hola haber si me podéis ayudar

estoy guardando direcciones url en una variable y me salen los caracteres "raros"
haber si me explico:
este es la parte del código que creo que me da el error

Inserir CODE, HTML ou PHP:
<?
$a = urlencode($web);

echo "<a href='http://www.".$a."'>Clic aquí</a>";
?>
la url introducida en $web no carga porque cambia los caracteres

Inserir CODE, HTML ou PHP:
Ejm. esta url http://forobeta.com/newthread.php?do=newthread&f=130
 la transforma en http://www.forobeta.com%2fnewthread.php%3fdo%3dnewthread/

sustituye los / por %2 y demas

y así no cargan

como lo puedo arreglar?
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
estas usando de manera errada la fucnion urlencode, yo personalmente nunca la he usado, pero si no me equivoco la funcion funciona para poder pasar variables por la url.
cuando queremos pasar una variable por la url y ella contiene simbolos que podrian ser interpretados de ota manera por el servidor web, / por 2% = por 3%D...
En este caso no deberias usar url encode, porque estas convirtiendo el / por un %2 ... No se si me explique de la mejor forma.. Espero te ayude, saludos..


El siguiente codigo funciona:

PHP:
<?

$web = "forobeta.com/newthread.php?do=newthread&f=130";
//$a = urlencode($web);

echo "<a href='http://www.".$web."'>Clic aquí</a>";
?>
 
estas usando de manera errada la fucnion urlencode, yo personalmente nunca la he usado, pero si no me equivoco la funcion funciona para poder pasar variables por la url.
cuando queremos pasar una variable por la url y ella contiene simbolos que podrian ser interpretados de ota manera por el servidor web, / por 2% = por 3%D...
En este caso no deberias usar url encode, porque estas convirtiendo el / por un %2 ... No se si me explique de la mejor forma.. Espero te ayude, saludos..


El siguiente codigo funciona:

PHP:
<?

$web = "forobeta.com/newthread.php?do=newthread&f=130";
//$a = urlencode($web);

echo "<a rel='nofollow' href='http://www.".$web."'>Clic aquí</a>";
?>

Gracias ya lo solucione
 
Voltar
Topo