Quién puede ayudarme con php...

davidpoza

Bien, estaba liado con un weblog que se me ha antojado hacer y he llegado a un punto en que la cosa me empieza a mosquear...
Los post que inserto son procesados de manera que los links son interpretados como tal y se añade la etiqueta <a>, hasta aquí todo perfecto.
Pero ahora quiero que al editar y cargarme de nuevo el post en el imput del form me lo vuleva a dejar tal cual. (así lo hace MV)
Yo habia pensado en:
$contenido= ereg_replace("<a target=_blank href=(.)>(.)</a>", "\2", $contenido);

el caso es que no funciona como debería si hay varios links en el mismo post, se come todos y solo deja uno. :(

por ejemplo:

<a target=blank href="http://www.pepe.com">http://www.pepe.com</a>

<a target=_blank href="http://www.media-vida.net">http://www.media-vida.net</a>


y me recoge solo esto:
http://www.media-vida.net, el resto me lo borra

Agradezco cualquier ayuda.

KARR

¿Qué tal...

$contenido=str_replace("<a href=\" target=_blank", "", $contenido);

$contenido=str_replace("\">", "", $contenido);

$contenido=str_replace("</a>", "", $contenido);

Salu2 ;)

davidpoza

Muchas gracias, no lo habia pensado así

Abreu

Como tu dices seria:

$contenido = preg_replace("#<a target=_blank href=.?>(.?)</a>#","\1",$contenido);

Como lo has puesto tu es muy "voraz" solo coje el primer "<a href..." y el ultimo "</a>", para evitarlo usa interrogantes despues de los cuantificadores.

Y una cosa, no seria mas facil guardarlo sin formatear? ;)

LOc0

Nunca he usado esa función... ¿Qué significa el \1??

Salu2 ;)

Abreu

Es como ereg_replace pero con expresiones perl, el \1 es el contenido de lo que hay en el primer parentesis, \2 el del segundo, etc..

BrOkeR

Creo q la mejor forma es guardarlo en la BD sin remplazar. Y remplazarlo al sacarlo en el blog.

al

#7 el ereg replace puede llegar a ser asquerosamente lento y en una página como MV si a cada click en la noticia han de parsearse las urls sería una sobrecarga del servidor innecesaria.

Vamos, que yo lo hago antes de meterlo en la bd. Quizás sea un poco engorroso para editar, pues has de revertir el proceso, pero por lo demás lo considero algo mejor.

gohrum

Usuarios habituales

  • gohrum
  • al
  • BrOkeR
  • Abreu
  • LOc0
  • davidpoza
  • KARR