Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/04/2003, 15:48
josemi
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Tus problemas son las comillas:

Caso 1:
Código PHP:
$texto=nl2br(htmlentities($row_textosblog['introduccion']
));

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

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

echo 
$texto
Si al principio pones las comillas al nl2br(), no se ejecuta la funcion, sino que el contenido de texto seria la cadena'nl2br(...'.

Caso 2:
Código PHP:
function ponertexto() {
global 
$row_textosblog;

        return  (
nl2br(htmlentities($row_textosblog['introduccion'
])));

        }





$texto=ponertexto();

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

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





echo 
$texto
En este caso, ademas de las comillas, la funcion solo mandaba al navegador el texto. Para recoger ese valor, tienes que usar el return. Ademas, $row_textoblog no esta definido dentro de la funcion, sino fuera. Para poder acceder a el dentro de la funcion, debes usar global. Aunque esta no es la mejor fomar de hacerlo, ya que obligas a que siempre que quieras usar la funcion, exista una variable llamada $row_textoblog o crear una nueva funcion con otra variable. La forma correcta de hacerlo con funciones es:
Código PHP:
function ponertexto($texto_a_cambiar) {

        return (
nl2br(htmlentities($texto_a_cambiar)));

        }





$texto=ponertexto($row_textoblog['introduccion']);

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

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





echo 
$texto
Y un consejo, antes de correr, aprende a andar.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.