Foros del Web » Programando para Internet » PHP »

problemas con if

Estas en el tema de problemas con if en el foro de PHP en Foros del Web. hola tengo la siguiente funcion.. Código PHP: function  BBparse ( $texto ) {     $texto  =  nl2br ( $texto );       $a  = array(        "/\[b\](.*?)\[\/b\]/is" ...
  #1 (permalink)  
Antiguo 05/04/2010, 15:39
 
Fecha de Ingreso: febrero-2009
Mensajes: 20
Antigüedad: 15 años, 10 meses
Puntos: 2
problemas con if

hola tengo la siguiente funcion..

Código PHP:
function BBparse($texto)
{
   
$texto nl2br($texto);  
   
$a = array(
      
"/\[b\](.*?)\[\/b\]/is",
      
"/\[i\](.*?)\[\/i\]/is",
      
"/\[u\](.*?)\[\/u\]/is",
      
"/\[img\](.*?)\[\/img\]/is",
      
"/\[img=(.*?)\]/is",
      
"/\[align=(.*?)\](.*?)\[\/align\]/is",
      
"/\[url=(.*?)\](.*?)\[\/url\]/is",
      
"/\[url\](.*?)\[\/url\]/is",
         
"/\[quote=(.*?)\](.*?)\[\/quote\]/is",
         
"/\[quote\](.*?)\[\/quote\]/is",
         
"/\[size=(.*?)\](.*?)\[\/size\]/is",
         
"/\[color=(.*?)\](.*?)\[\/color\]/is",
         
"/\[font=(.*?)\](.*?)\[\/font\]/is",
      
"/\[swf=http:\/\/www.youtube.com\/v\/(.*?)\]/is",
      
"/\[swf=http:\/\/video.google.com\/googleplayer.swf?docId=(.*?)\]/is",
      
"/\[swf=(.*?)\]/is"
   
);
   
$b = array(
      
"<b>$1</b>",
      
"<em>$1</em>",
      
"<u>$1</u>",
      
"<img src=\"$1\" OnLoad=\"if(this.width > 750) {this.width=730}\" />",
      
'<img id="imagen" src="$1" border="0">',
      
"<div align=\"$1\">$2</div>",
      
"<a href=\"$1\" target='_blank'>$2</a>",
         
"<a href=\"$1\" target='_blank'>$1</a>",
         
"<blockquote><div class=\"cita\"><strong>$1</strong> dijo:</div><div class=\"citacuerpo\"><p>$2</p></div></blockquote>",
         
"<blockquote><div class=\"cita\">Cita :</div><div class=\"citacuerpo\">$1<br></div></blockquote>",
         
"<div class='size$1'>$2</div>",
         
"<font color=\"$1\">$2</font>",
      
"<font face=\"$1\">$2</font>",
      
"<div align=\"center\"><embed src=\"http://www.youtube.com/v/$1\" quality=high width=\"425\" height=\"350\" TYPE=\"application/x-shockwave-flash\" AllowScriptAccess=\"never\"></embed></div>",
      
"<div align=\"center\"><embed src=\"http://www.youtube.com/v/$1\" quality=high width=\"425\" height=\"350\" TYPE=\"application/x-shockwave-flash\" AllowScriptAccess=\"never\"></embed></div>",
      
'<center><embed src="$1" quality="high" type="application/x-shockwave-flash" allownetworking="internal" allowscriptaccess="never" wmode="transparent" width="425" height="350"></center>'
   
); 


lo que quiero hacer es poner un
Código PHP:
if($_SESSION['user']) 
en esta parte:


"<a href=\"$1\" target='_blank'>ACA EL IF</a>",


probe de todas maneras y me tira error. lo que quiero intentar hacer es que los links de mi sitio solo los vean los usuarios registrados. pero no puedo poner el if
  #2 (permalink)  
Antiguo 05/04/2010, 15:41
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: problemas con if

Podrías colocar el ejemplo completo de lo que estás haciendo.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 05/04/2010, 15:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: problemas con if

pues esa no es la forma... en todo caso debes intervenir el reemplazo de la función con preg_replace_callback() para condicionar dentro...

o bien, usar el modificador de evaluación para devolver una función a la cual le pases la captura y regresas lo que desees... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 05/04/2010, 15:44
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 2 meses
Puntos: 334
Respuesta: problemas con if

o tambien usar el modificador e
el cual evalua tu sustitucion en busca de codigo php :P
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 05/04/2010, 15:54
 
Fecha de Ingreso: febrero-2009
Mensajes: 20
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: problemas con if

lo que quiero es.. hacer algo asi.

en ese codigo.. en la parte esta:

"<a href=\"$1\" target='_blank'>$1</a>",

reemplazarla por algo asi.

"<a href=\"$1\" target='_blank'>if($_SESSION['user']) {$1} else { echo"Debes estar registrado para ver los links"; }</a>",

digamos que solo usuarios registrador puedan ver las urls.

no soy bueno con php..
  #6 (permalink)  
Antiguo 05/04/2010, 16:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: problemas con if

claro, todos entendimos que quieres hacer... pero el que no seas bueno con PHP no quiere decir que no puedas, al menos debes intentarlo... (:

lee lo siguiente:
http://www.forosdelweb.com/f18/aport...s-pcre-646110/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 05/04/2010, 20:20
 
Fecha de Ingreso: febrero-2009
Mensajes: 20
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: problemas con if

Cita:
Iniciado por pateketrueke Ver Mensaje
claro, todos entendimos que quieres hacer... pero el que no seas bueno con PHP no quiere decir que no puedas, al menos debes intentarlo... (:

lee lo siguiente:
[url]http://www.forosdelweb.com/f18/aporte-expresiones-pcre-646110/[/url]
no logro hacerlo. podrias darme una mano? te lo agradeceria muchisimo
  #8 (permalink)  
Antiguo 05/04/2010, 20:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: problemas con if

mira... este es un ejemplo algo sencillo:
Código PHP:
$foo 'candy bar does nothing else more with all';
$bar preg_replace('/(bar|all)/ei''baz_buzz("\\0");'$foo);

echo 
$bar;

function 
baz_buzz($bazzinga)
{
  if (
$bazzinga != 'bar') return strtoupper($bazzinga);
  return 
'BAD&amp;MAD';

alguna idea te dará... ;)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: condicional, ifelse
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:12.