Foros del Web » Programando para Internet » PHP »

como poner dos if ???

Estas en el tema de como poner dos if ??? en el foro de PHP en Foros del Web. Hola tengo que hacer dos comparaciones la comparacion numero 1 seria la de $d_stock y esa esta bien... la seguna es $d_imag, que lo que ...
  #1 (permalink)  
Antiguo 18/09/2007, 16:31
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 820
Antigüedad: 12 años, 4 meses
Puntos: 7
Pregunta como poner dos if ???

Hola tengo que hacer dos comparaciones la comparacion numero 1 seria la de $d_stock y esa esta bien...



la seguna es $d_imag, que lo que quiero hacer es que cuando el campo este vacio no salga imag, y cuando este lleno si salga pero me sale error de syntaxis..



Código PHP:
$sql "SELECT d_codigo,d_descripcion,d_pventa,d_stock,d_imag FROM discos ORDER BY id ASC";
$resmysql_query($sql) or die (mysql_error());
if( 
mysql_num_rows($res) >0){
 
//impresión de los datos.
 
while (list($d_codigo,$d_descripcion,$d_pventa,$d_stock,$d_imag) = mysql_fetch_array($res)) {
  echo 
"<tr><td><font size=\"2\"><font face=\"Tahoma\">$d_codigo</font></font></td>";
  echo 
"<td><font size=\"2\"><font face=\"Tahoma\">$d_descripcion</font></font></td>";
  echo 
"<td><font size=\"2\"><font face=\"Tahoma\">$d_pventa</font></font></td>";
         
 
  
  
  
if(
$d_stock ==1
{echo 
"<td><img src='op_1.gif'></td>";}
elseif(
$d_stock ==2
{echo 
"<td><img src='op_2.gif'></td>";}
elseif(
$d_stock ==3)
 {echo 
"<td><img src='op_3.gif'></td>";}  
elseif(
$d_stock ==4
{echo 
"<td><img src='op_4.gif'></td>";}
if(
$d_imag =="")
{elseif echo
"que no muestrw $d_imag"}
// 
{elseif echo "<td><font size=\"2\"><font face=\"Tahoma\"><a href=\"../imag_productos/".$d_imag."\">Imag</a></font></font></td>";}
}
}else{
 echo 
"<td colspan='5' align='center' >no se obtuvieron resultados</td>";
}
 
mysql_close($cnx);
?>
</table>
</div> 


les dejo el codigo, es bastante simple
muchas gracias a todos
saludos
federio
  #2 (permalink)  
Antiguo 18/09/2007, 16:55
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 14 años, 5 meses
Puntos: 23
Re: como poner dos if ???

Que tal..
Yo lo haría de esta forma, fijate que es lo que cambié,... más que nada cambié tu estructura de programar, está más "comprensible" ahora... de todos los modos.. mira que cambio.

Código:
switch($d_stock) {
case 1
	echo "<td><img src='op_1.gif'></td>";
	break;
case 2
	echo "<td><img src='op_2.gif'></td>";
	break;
case 3 
	echo "<td><img src='op_3.gif'></td>";	
	break;
case 4
	echo "<td><img src='op_4.gif'></td>";
	break;
}
 

if ($d_imag !== ""){
		echo "<td><font size=\"2\"><font face=\"Tahoma\"><a href=\"../imag_productos/".$d_imag."\">Imag</a></font></font></td>";
}else if($d_imag == ""){
		echo"que no muestrw $d_imag";
}
Espero que te sirva.

Saludos.
  #3 (permalink)  
Antiguo 18/09/2007, 17:13
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 820
Antigüedad: 12 años, 4 meses
Puntos: 7
Pregunta Re: como poner dos if ???

Hola 1000 gracias por contestar, lo hice me sale un error de sintaxis

Parse error: syntax error, unexpected T_ECHO in C:\AppServ\www\quolocal\muestraproductos\0001_disc os.php on line 52


Código PHP:
if( mysql_num_rows($res) >0){
 
//impresión de los datos.
 
while (list($d_codigo,$d_descripcion,$d_pventa,$d_stock,$d_imag) = mysql_fetch_array($res)) {
  echo 
"<tr><td><font size=\"2\"><font face=\"Tahoma\">$d_codigo</font></font></td>";
  echo 
"<td><font size=\"2\"><font face=\"Tahoma\">$d_descripcion</font></font></td>";
  echo 
"<td><font size=\"2\"><font face=\"Tahoma\">$d_pventa</font></font></td>";
         
switch(
$d_stock) {
case 
1
 
echo "<td><img src='op_1.gif'></td>"; ------------------- linea 52 
 
break;
case 
2
 
echo "<td><img src='op_2.gif'></td>";
 break;
case 

 
echo "<td><img src='op_3.gif'></td>"
 break;
case 
4
 
echo "<td><img src='op_4.gif'></td>";
 break;
}
 
if (
$d_imag !== ""){
  echo 
"<td><font size=\"2\"><font face=\"Tahoma\"><a href=\"../imag_productos/".$d_imag."\">Imag</a></font></font></td>";
}else if(
$d_imag == ""){
  echo
"que no muestrw $d_imag";
}
 
  
  
  
}
}else{
 echo 
"<td colspan='5' align='center' >no se obtuvieron resultados</td>";
}
 
mysql_close($cnx);
?>
</table>
</div> 

saludos y graciassss
federico
  #4 (permalink)  
Antiguo 18/09/2007, 17:29
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 14 años, 5 meses
Puntos: 23
Re: como poner dos if ???

Probaste con ponerle los dos puntos a cada CASE?

Código:
if( mysql_num_rows($res) >0){
 //impresión de los datos.
 while (list($d_codigo,$d_descripcion,$d_pventa,$d_stock,$d_imag) = mysql_fetch_array($res)) {
  echo "<tr><td><font size=\"2\"><font face=\"Tahoma\">$d_codigo</font></font></td>";
  echo "<td><font size=\"2\"><font face=\"Tahoma\">$d_descripcion</font></font></td>";
  echo "<td><font size=\"2\"><font face=\"Tahoma\">$d_pventa</font></font></td>";
         
switch($d_stock) {
case 1:
 echo "<td><img src='op_1.gif'></td>"; 
 break;
case 2:
 echo "<td><img src='op_2.gif'></td>";
 break;
case 3_ 
 echo "<td><img src='op_3.gif'></td>"; 
 break;
case 4:
 echo "<td><img src='op_4.gif'></td>";
 break;
}
 
if ($d_imag !== ""){
  echo "<td><font size=\"2\"><font face=\"Tahoma\"><a href=\"../imag_productos/".$d_imag."\">Imag</a></font></font></td>";
}else if($d_imag == ""){
  echo"que no muestrw $d_imag";
}
 
  
  
}else{
 echo "<td colspan='5' align='center' >no se obtuvieron resultados</td>";
	}
 }

mysql_close($cnx);
?>
</table>
</div>
Ah y otra cosa, está mal al hacer esto (creo)

Código:
}
}else{
lo cambie por

Código:
}else{
...
}
}
Fijate...
Saludos!
  #5 (permalink)  
Antiguo 18/09/2007, 17:49
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 820
Antigüedad: 12 años, 4 meses
Puntos: 7
De acuerdo Re: como poner dos if ???

Hola, ahora si funciona, muchas graciasssss..!!!!!!!!!!!!

1000000 gracias

Saludos federico
  #6 (permalink)  
Antiguo 18/09/2007, 17:52
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 14 años, 5 meses
Puntos: 23
Re: como poner dos if ???

De nada ;)...
Me alegro de que te haya servido mi ayuda ¬¬'...
Recuerda que para eso estamos, para ayudarnos mutuamente.

Saludos!
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 02:08.