Darse de alta en la web | Recuperar password   
Inicio / Foros / PHP-GTK / problema con if
8 respuestas recibidas | 765 visitas | Categoría PHP-GTK

problema con if

Avatar de micky_r200
Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1

(Nivel 1 - 9 posts)

#0 Offline micky_r200 Usuario 19 abr 07 (22:01)  
Hola perdon por no entrar al foro antes, pero ha sido por falta de tiempo y bueno tengo una nueva duda, quiero poner una condicion, en un archivo.php en el cual tengo un reporte de una consulta a una base de datos, en este reporte tengo varias columnas entre ellas , dos "documento y tipo" en la columna documento tengo un link que ira a otro archivo.php dependiendo de el numero que tenga la columna tipo ejemplo si en la columna tipo tiene el numero 1 el link de documento ira a un archivo, si tiene el numero 2 ira a otro y asi, y bueno ya me atore

<?$tipo=$row2["tipo"]?>

<td width="1%" align="center"><?php print $row2["tipo"]; ?></td>
<td width="2%" align="center><?if ($row2["tipo"]=="0")?><a href=prealers.php><?php print $row2["documento"]; ?>
<?elseif($row2["tipo"]=="1")?><a href=formulario.htm><?php print $row2["documento"]; ?>
<?elseif($row2["tipo"]=="2")?><a href=prealers.php><?php print $row2["documento"]; ?>
<?elseif($row2["tipo"]=="3")?><a href=formulario.htm><?php print $row2["documento"]; ?>
<?elseif($row2["tipo"]=="4")?><a href=menu2.php><?php print $row2["documento"]; ?>
</td>
me podrian ayudar Gracias

Re: problema con if

Avatar de Gaatake
Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3

(Nivel 3 - 150 posts)

#1 Offline Gaatake Usuario 19 abr 07 (22:18)  
Por que no pruebas con un swicth?

Código PHP


<?php
$sql
= "CONSULTA";
$result = mysql_query($sql);
$row2 = mysql_fetch_assoc($result)

switch (
$row2['tipo']) {
    case
'0':
        
$archivo = 'prealers.php';
    break;
    case
'1':
        
$archivo = 'formulario.php';
    break;

   (
ASÍ HASTA QUE PONGAS TODAS LAS POSIBILIDADES
}
print
'<td width="1%" align="center">' .$row2['tipo']. '</td>
          <td width="2%" align="center><a href="'
.$archivo. '">' .$row2['documento']. '</a>';

Al fin firmas !!!xD Un hurra por Zubyc

problemas con if

Avatar de micky_r200
Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1

(Nivel 1 - 9 posts)

#2 Offline micky_r200 Usuario 19 abr 07 (23:37)  
ok probare con switch no lo habia tomado en cuenta Gracias

Re: problema con if

Avatar de mnolae
Nivel 2 Nivel 2 Nivel 2 Nivel 2 Nivel 2 Nivel 2 Nivel 2

(Nivel 2 - 75 posts)

#3 Offline mnolae Usuario 20 abr 07 (09:29)  
Utiliza las llaves ({...}) para agrupar las sentencias y no te olvides de cerrar los enlaces.
Sería algo así:

Código PHP


<?php if ($row2["tipo"]=="0"){ ?><a href=prealers.php><?php print $row2["documento"]; ?></a><?php } ?>
<?php
elseif($row2["tipo"]=="1"){ ?><a href=formulario.htm><?php print $row2["documento"]; ?></a><?php } ?>
.
.
.



Un saludo.

prbelmas con if

Avatar de micky_r200
Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1

(Nivel 1 - 9 posts)

#4 Offline micky_r200 Usuario 20 abr 07 (23:23)  
oyes mnolae fijate que lo hice como me dijiste y me manda un error

<?php if ($row2["tipo"]=="0"){ ?><a href=prealers.php><?php print $row2["documento"]; ?></a><?php } ?>
<?php elseif($row2["tipo"]=="1"){ ?><a href=formulario.htm><?php print $row2["documento"]; ?></a><?php } ?>


Parse error: parse error, unexpected T_ELSEIF in C:\wamp\www\anticipos.php on line 115

Re: problema con if

Avatar de Gaatake
Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3

(Nivel 3 - 150 posts)

#5 Offline Gaatake Usuario 22 abr 07 (18:32)  
mnolae por qué cierras y abres el PHP entre la 2ª y 3ª línea? No sé si eso será el error pero aún si no lo es creo que es una tontería ya que lo único que haces es escribir más caracteres y por tanto aumentar el tamaño del archivo.

Al fin firmas !!!xD Un hurra por Zubyc

problemas con if

Avatar de micky_r200
Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1 Nivel 1

(Nivel 1 - 9 posts)

#6 Offline micky_r200 Usuario 23 abr 07 (22:29)  
no encuentro le error, me podrian ayudar.

?>

<tr>
<td width="1%" align="center"><?php print $row2["tipo"]; ?></font></td>

<td width="2%" align="center"><?switch ($row2["tipo"]) { <?php print $row2["documento"]; ?>
case "1": header ("<a href=menu2.php>");
exit();
break;
case "2": header ("<a href=menu2.php>");
exit();
break;
case "2": header ("<a href=menu2.php>");
exit();
break;
}
<td width="2%" align="center"><?php print $row2["referencia"]; ?></font></td>
<?php

Re: problema con if

Avatar de mnolae
Nivel 2 Nivel 2 Nivel 2 Nivel 2 Nivel 2 Nivel 2 Nivel 2

(Nivel 2 - 75 posts)

#7 Offline mnolae Usuario 24 abr 07 (14:32)  
Con respecto a lo de cerrar PHP entre la 2ª y la 3ª línea, Gaatake tiene razón, lo hice por darle un aspecto más lineal, pero no es necesario abrir y cerrar.

Con respecto al fallo que sigues teniendo, micky_r200, especifica un poco más, muestra por ejemplo la línea 115 en la que te da el error de parseado. En principio parece que las líneas que he escrito deberían bastar.

Y además, el segundo código que has puesto ¿qué es?. Abres un switch, justo antes del print, luego lo cierras y dejas los 'case' fuera del bloque PHP, cierras con una } fuera del mismo bloque, en fin, aclaralo un poco por favor.

Re: problema con if

Avatar de Gaatake
Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3 Nivel 3

(Nivel 3 - 150 posts)

#8 Offline Gaatake Usuario 24 abr 07 (20:29)  
Además. En los header has puesto el código HTML de un enlace. Eso no es ninguna cabecera y no cuncionará bien. Para redirigir debes utilizar header("Location: ruta/del/archivo.extensión");

Al fin firmas !!!xD Un hurra por Zubyc

Responder mensaje

Para poder participar debes estar registrado e identificado. Si no estás registrado como usuario de PHP-Hispano, :: Registrar ::
Login / Password   

Web alojada en Zilos

php-hispano.net 2002 - 2008 | XHTML 1.0
Datos Legales | Webmaster