Ir para conteúdo
Fórum Script Brasil
  • 0

Bbocode (url)


Titio Linkin

Pergunta

15 respostass a esta questão

Posts Recomendados

  • 0

ése eu for fazer por str_replace teria que usar um str assim

str_replace("[","</a>");

isso vai prejudicar o bbcode do [ B] por exemplo ele vai pegar e substituir o [ por </a> entendeu não via funcionar corretamente estou postando isso aqui porque sei q da conflito porque se não já tinha feio desta forma :(

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Não acho que funcione!
use isto, ajudara:

function ubbcode($text){

     $tagArray['url=(.*)'] = array('open'=>'<a href="','close'=>'">\\2</a>');

}

ai fica

$variavel = url;

echo ubbcode($variavel);

Um teste simulando o problema de nosso amigo com a sugestão de solução por ER, e que não funcionou.

<?php

function ubbcode($text){
    $tagArray['url=(.*)'] = array('open'=>'<a href="','close'=>'">\\2</a>');
} 

$variavel = 'Para acessar minha página [url=http://www.minhapagina.com.br] clique aqui [/url] e você irá até ela.';

echo ubbcode($variavel); 


?>

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Veja a Solução REAL

Isso aqui foi extraído do PHPnuke, testado, e está funcionando!

Segue exemplo junto!!!

<?php 
// ###################### Start bbcodeparse ####################### 
function bbcode($bbcode) 
{ 

    $bbcode = str_replace('&lt;','&amp;lt;',$bbcode); 
    $bbcode = str_replace('&gt;','&amp;gt;',$bbcode); 
    $bbcode = str_replace('<','&lt;',$bbcode); 
    $bbcode = str_replace('>','&gt;',$bbcode); 
    $bbcode = nl2br($bbcode); 

        $searcharray = array( 
          "/(\[)(list)(=)(['\"]?)([^\"']*)(\\4])(.*)(\[\/list)(((=)(\\4)([^\"']*)(\\4]))|(\]))/siU", 
          "/(\[)(list)(])(.*)(\[\/list\])/siU", 
          "/(\[\*\])/siU", 
          "/(\[)(url)(=)(['\"]?)(www\.)([^\"']*)(\\4)(.*)(\[\/url\])/siU", 
          "/(\[)(url)(=)(['\"]?)([^\"']*)(\\4])(.*)(\[\/url\])/siU", 
          "/(\[)(url)(])(www\.)([^\"]*)(\[\/url\])/siU", 
          "/(\[)(url)(])([^\"]*)(\[\/url\])/siU", 
          "/(\[)(b)(])(\r\n)*(.*)(\[\/b\])/siU", 
          "/(\[)(u)(])(\r\n)*(.*)(\[\/u\])/siU", 
          "/(\[)(i)(])(\r\n)*(.*)(\[\/i\])/siU", 
          "/(\[)(php)(])(\r\n)*(.*)(\[\/php\])/siU", 
          "/(\[)(code)(])(\r\n)*(.*)(\[\/code\])/siU", 
          "/(\[)(pre)(])(\r\n)*(.*)(\[\/pre\])/siU", 
          "/javascript:/si", 
          "/about:/si" 
        ); //'" 

        $replacearray = array( 
          "<ol type=\"\\5\">\\7</ol>", 
          "<ul>\\4</ul>", 
          "<li>", 
          "<a href=\"http://www.\\6\" target=\"_blank\">\\8</a>", 
          "<a href=\"\\5\" target=\"_blank\">\\7</a>", 
          "<a href=\"http://www.\\5\" target=\"_blank\">\\5</a>", 
          "<a href=\"\\4\" target=\"_blank\">\\4</a>", 
          "<b>\\5</b>", 
          "<u>\\5</u>", 
          "<i>\\5</i>", 
          "<blockquote><pre>código:<hr noshade>\\5<hr noshade></pre></blockquote>", 
          "<blockquote><pre>código:<hr noshade>\\5<hr noshade></pre></blockquote>", 
          "<pre>código:\\5</pre>", 
          "java script:", 
          "about :" 
        ); 

    $bbcode = preg_replace($searcharray, $replacearray, $bbcode); 
    $bbcode = preg_replace("/(\[)(img)(])(\r\n)*([^\"]*)(\[\/img\])/siU", "<img src=\"\\5\" border=\"0\" alt=\"\">", $bbcode); 
    //$bbcode = preg_replace("/(\[)(img)(])(\r\n)*([^\"]*)(\[\/img\])/siU", "<a href=\"\\5\" target=\"_blank\">\\5</a>", $bbcode); 
    $bbcode = str_replace("\\'", "'", $bbcode); 
    $bbcode = str_replace('<br />','<br>', $bbcode); 
     
    $codebits = explode('<blockquote><pre>código:<hr noshade>',$bbcode); 
    list($key,$bbcode) = each($codebits); 
    while (list($key,$val) = each($codebits)) 
    { 
        $sbbits = explode('<hr noshade></pre></blockquote>',$val); 
        $newbits = str_replace('<br>','', $sbbits[0]).'<hr noshade></pre></blockquote>'.$sbbits[1]; 
        $bbcode .= '<blockquote><pre>código:<hr noshade>'.$newbits; 
    } 
    $codebits = explode('<pre>código:',$bbcode); 
    list($key,$bbcode) = each($codebits); 
    while (list($key,$val) = each($codebits)) 
    { 
        $sbbits = explode('</pre>',$val); 
        $newbits = str_replace('<br>','', $sbbits[0]).'</pre>'.$sbbits[1]; 
        $bbcode .= '<pre>código:'.$newbits; 
    } 
    return $bbcode; 
} 


// EXEMPLO 
$texto = ' 
[b]Olá[/b], 
Este é [u]apenas um teste[/u] para mostrar [i]o que ele faz[/i] [url]http://www.dominio.com.br[/url] 
[code] 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN\"> 

<html> 
<head> 
    <title>títutlo</title> 
</head> 
<body> 
texto texto texto texto texto texto texto 
</body> 
</html>
  • asdf
  • asdf
  • asdf
'; echo bbcode($texto); ?>
Link para o comentário
Compartilhar em outros sites

  • 0

tenta essa lógica ai cara, aqui deu certo interagindo os Seu Site e os

$texto = str_replace("[url=,"<a href=",$texto);

$texto = str_replace(]",">",$texto);

$texto = str_replace("[/url","</a",$texto);

$texto = str_replace("[b","<b",$texto);

$texto = str_replace("[/b","</b",$texto);

Vê se dá certo ai, se der é só você fazer mais desse para o que você precisa

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...