Ver Mensaje Individual
  #33 (permalink)  
Antiguo 10/10/2007, 10:06
Avatar de webdesignsite
webdesignsite
 
Fecha de Ingreso: enero-2007
Mensajes: 155
Antigüedad: 17 años, 4 meses
Puntos: 1
Pregunta Re: Ayuda para Citar en un post...!!!

Hola tengo esta funcion:

Código PHP:
<?php
function bbcode_format ($str) {
    
$str htmlentities($str);

    
$simple_search = array(
                
'/\[b\](.*?)\[\/b\]/is',                                
                
'/\[i\](.*?)\[\/i\]/is',                                
                
'/\[u\](.*?)\[\/u\]/is',                                
                
'/\[url\=(.*?)\](.*?)\[\/url\]/is',                         
                
'/\[url\](.*?)\[\/url\]/is',                             
                
'/\[align\=(left|center|right)\](.*?)\[\/align\]/is',    
                
'/\[img\](.*?)\[\/img\]/is',                            
                
'/\[mail\=(.*?)\](.*?)\[\/mail\]/is',                    
                
'/\[mail\](.*?)\[\/mail\]/is',                            
                
'/\[font\=(.*?)\](.*?)\[\/font\]/is',                    
                
'/\[size\=(.*?)\](.*?)\[\/size\]/is',                    
                
'/\[color\=(.*?)\](.*?)\[\/color\]/is',        
                );

    
$simple_replace = array(
                
'<strong>$1</strong>',
                
'<em>$1</em>',
                
'<u>$1</u>',
                
'<a href="$1">$2</a>',
                
'<a href="$1">$1</a>',
                
'<div style="text-align: $1;">$2</div>',
                
'<img src="$1" />',
                
'<a href="mailto:$1">$2</a>',
                
'<a href="mailto:$1">$1</a>',
                
'<span style="font-family: $1;">$2</span>',
                
'<span style="font-size: $1;">$2</span>',
                
'<span style="color: $1;">$2</span>',
                );

    
// Do simple BBCode's
    
$str preg_replace ($simple_search$simple_replace$str);

    
// Do <blockquote> BBCode
    
$str bbcode_quote ($str);

    return 
$str;
}



function 
bbcode_quote ($str) {
    
$open '<blockquote>';
    
$close '</blockquote>';

    
// How often is the open tag?
    
preg_match_all ('/\[QUOTE\]/i'$str$matches);
    
$opentags count($matches['0']);

    
// How often is the close tag?
    
preg_match_all ('/\[\/QUOTE\]/i'$str$matches);
    
$closetags count($matches['0']);

    
// Check how many tags have been unclosed
    // And add the unclosing tag at the end of the message
    
$unclosed $opentags $closetags;
    for (
$i 0$i $unclosed$i++) {
        
$str .= '</blockquote>';
    }

    
// Do replacement
    
$str str_replace ('[' 'QUOTE]'$open$str);
    
$str str_replace ('[/' 'QUOTE]'$close$str);

    return 
$str;
}
?>

Lo que realiza entre otras cosas y es lo que me interesa, es citar post ya citados las veces que quiera, esta funcion esta ok!.
Mi problema es que quiero que también me incluya el nombre de usuario, o sea así [ QUOTE=us ]cita[ / QUOTE ]respuesta (esta es la forma en que están guardadas en BD), trate de modificar la function pero no me funciona y el resultado es incorrecto.

En fin, como podría realizar lo que expuse mas arriba?

Gracias y saludos!!!


P.D.:
Los corchetes de arriba están separados p/ que no aparezca citado.
__________________
WebDesignSite
Diseño Web - Altas Buscadores Gratis - Intercambio de Banners - Foros de soporte
http://webdesignsite.bolhost.com/