Ver Mensaje Individual
  #9 (permalink)  
Antiguo 02/06/2014, 16:47
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 10 meses
Puntos: 320
Respuesta: Caracteres ">" y "<" en url generan un "Forbidden"

Muchas gracias por el interés, tu primer código:
Código PHP:
Ver original
  1. <?php
  2. $foo = 'bla bla <b>Hello World!</b>';
  3. $foo_encoded = urlencode(htmlentities($foo));
  4. ?>
  5. <a href="<?= 'http://localhost/pruebas/test-'.$foo_encoded; ?>">Enlace</a>
funciona de forma aparente, es decir, no me da 403, pero no esta enviando el signo ">" sino un "entitie html" (¿Se llamara asi?...) y no me sirve, fijate esto:

.htaccess
Código Apache:
Ver original
  1. Options +FollowSymLinks
  2. RewriteEngine on
  3.  
  4. RewriteRule ^test-(.*)$ index.php?token=$1

index.php
Código PHP:
Ver original
  1. <?php
  2.     var_dump($_GET);
  3.    
  4.     $foo = 'bla-bla-4>2-y-3<6';
  5.     $foo_encoded = urlencode(htmlentities($foo));
  6. ?>
  7. <a href="test-<?=$foo_encoded;?>">test-<?=$foo_encoded;?></a>

Acceso por index.php:
Cita:
array (size=0)
empty
test-bla-bla-4%26gt%3B2-y-3%26lt%3B6
Acceso por test-bla-bla-4%26gt%3B2-y-3%26lt%3B6
Cita:
array (size=3)
'token' => string 'bla-bla-4' (length=9)
'gt;2-y-3' => string '' (length=0)
'lt;6' => string '' (length=0)
test-bla-bla-4%26gt%3B2-y-3%26lt%3B6
La segunda funcion, my_htmlentities si bien funciona, me parece demasiado rustica jaja ademas de que no soluciona el problema de pasar un ">" o "<" porque en realidad esta pasando "__menor__" que nunca tubo problema.
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios