Creando BBCode

Iniciado por aaronduran2, 1 Abril 2010, 19:42 PM

0 Miembros y 2 Visitantes están viendo este tema.

aaronduran2

Hola. Estoy intentando crear un BBCode para mi foro similar al "code", pero para colocar enlaces de descarga. La base la tengo hecha, pero hay algo que no soy capaz de solucionar.
Introduzcas el texto que introduzcas, los enlaces te los detecta como tal, y por lo tanto, te permite hacer clic en él. Lo que yo quería crear era algo como el "code", que no lo detecte como enlace, sino como texto normal.

¿Alguien tiene alguna idea de cómo podría hacerlo?
Gracias de antemano ;)

Shell Root

Emmm no entendì...  :silbar: Explica un poco màs y danos un ejemplo.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

aaronduran2

#2
Te explico:

Si pongo un enlace entre las etiquetas "code":

http://www.google.es

Es sólo texto, no me permite hacer clic y que me lleve a Google.

El caso es que hice un BBCode que consiste en algo parecido a esta etiqueta, pero para añadir enlaces de descarga, y por lo tanto, con un diseño distinto. El problema es que los enlaces me los detecta como si estuviesen entre la etiqueta "url", pero lo que me interesaba era que fuese como en "code", que no se puedan clickear.

Este es el código que uso:

Código (html4strict) [Seleccionar]
<table border="0" cellspacing="0" cellpadding="0">
   <tr>
       <td height="39" colspan="3">
       <table border="0" width="100%" cellspacing="0" cellpadding="0">
           <tr>
               <td width="113" background="images/extras/down1.gif" height="39">
               &nbsp;</td>
               <td background="images/extras/down2.gif">&nbsp;</td>
               <td width="48" background="images/extras/down3.gif" height="39">
               &nbsp;</td>
           </tr>
       </table>
       </td>
   </tr>
   <tr>
       <td bgcolor="#C0DDFF" width="10">&nbsp;</td>
       <td bgcolor="#C0DDFF">
       <table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse; border: 1px solid #007FD8" bgcolor="#FFFFFF">
           <tr>
               <td style="font-family: Arial; font-size: 12px; color: #707070">
               <p style="margin: 5px">$1</td>
           </tr>
       </table>
       </td>
       <td bgcolor="#C0DDFF" width="10">&nbsp;</td>
   </tr>
   <tr>
       <td colspan="3">
       <table border="0" width="100%" cellspacing="0" cellpadding="0">
           <tr>
               <td background="images/extras/down4.gif" height="11" width="11">
               <img border="0" src="images/extras/space.gif" width="1" height="1"></td>
               <td bgcolor="#C0DDFF" height="11">
               <img border="0" src="images/extras/space.gif" width="1" height="1"></td>
               <td background="images/extras/down5.gif" height="11" width="11">
               <img border="0" src="images/extras/space.gif" width="1" height="1"></td>
           </tr>
       </table>
       </td>
   </tr>
</table>

Espero haberme explicado.

Un saludo.

Nakp

 ese es el codigo html... imagino que lo estas haciendo en php y ese es el codigo que se necesita :P
Ojo por ojo, y el mundo acabará ciego.

aaronduran2

El código es en HTML, no en PHP. Son BBCodes, y que yo sepa se hacen para utilizar HTML.

Un saludo.

Nakp

 lol entonces no tienes ni idea de lo que haces xDDD


para comenzar BBC significa bulletin board code, o en español: codigo de tablon de bolentines y sirve para dar formato al texto a publicar sin utilizar html directamente, por lo tanto necesitas un lenguaje DINAMICO para convertir este codigo en html, conclusion: un bbc es para NO usar html :xD


necesitas un codigo que pase de [etiqueta]texto[/etiqueta] a algun formato html como <etiqueta>texto</etiqueta> en el caso mas simple


salu2
Ojo por ojo, y el mundo acabará ciego.

aaronduran2

Me refería a eso, que es para simplificar el uso del HTML, pero el código a reemplazar se hace en HTML.
A no ser que se moviese por ser los boletines en PHP.

;)

Nakp

mmm creo que el problema esta entre el teclado y la silla, html no es un lenguaje dinamico y no se puede reemplazar solo con html... explica como estas pasando de bbc a html
Ojo por ojo, y el mundo acabará ciego.

aaronduran2

Me explico.

Utilizo MyBB, y en la sección de MyCodes (para crear los BBCodes personalizados), puedes poner un código HTML que reemplazará a lo que pongas entre las etiquetas. Por ejemplo, si pongo [linea], y en el reemplazo pongo <hr>, me lo reemplazará por una línea horizontal. Sirve con cualquier código HTML.

Espero que me entiendas.
Un saludo ;)

Nakp

 al fin :) si yo fuese adivino ganaria millones xDD


en el ejemplo que esta en el panel de administracion te dejan uno muy claro :P

\[b\](.*?)\[/b\] -> <strong>$1</strong>

usa:

\[tuetiqueta\](.*?)\[/tuetiqueta\] -> <pre>$1</pre>

aunque me gustaria que pusieras el que estas usando y te da problemas :P
Ojo por ojo, y el mundo acabará ciego.