Programación Web y Scripting > PHP
BUCLE for
cesand:
Muchas gracias Tanori por esa exiplicacion me aclaro un poco mas el tema no sabia ni imaginaba que se podia abrir un php para cerrar algon simbolo que quedo colgado del php anterior en el codigo... es eso lo que se hizo no?
Estoy contento ya qu con el SWITCH pude hacer que me muestre los dias de la semana en la columna de los dias... aca muestro como lo hice:
<html>
<head>
<title>Documento sin título</title>
</head>
<body>
<table width="40%" border="3">
<tr>
<td align="center" width="50%"> numero
</td>
<td align="center"> dia
</td>
</tr>
<?php
for ($a=1;$a <= 7;$a++){
?>
<tr>
<td>
<?php
echo $a;
?>
</td>
<td>
<?php
switch ($a) {
case 1:
echo "lunes";
break;
case 2:
echo "martes";
break;
case 3:
echo "miercoles";
break;
case 4:
echo "jueves";
break;
case 5:
echo "viernes";
break;
case 6:
echo "sabado";
break;
case 7:
echo "domingo";
break; }
?>
</td>
</tr>
<?php
} ?>
</table>
</body>
</html>
Ahora por favor pido otra ayuda con para este mismo ejercicio lo qu quiero hacer es hacer una variable de tipo vandera creo le llaman para que automaticamente con algun IF creo tendria que ser para qu se pinte selda por medio, es decir una celda si o otra no (de cualquier color gris, azul, verde no importa)
como podria hacer eso? desde ya agradesco muchisimo las ayudas hasta el momento realmente menos mal encontre este foro.
Saludos a todos.
shadow_rev:
Tienes 2 formas de hacerlo; una de ellas es con JQuery en Javascript, pero no compete a este foro:
1. Primero, defines 2 estilos. Puedes hacerlo adjuntando a la página un css (<link href="hoja_estilos.css" rel="stylesheet" type="text/css" />) o definiéndolos directamente en el <head> de la página con el tag <style>
--- Código: CSS ---.fila-par { background-color: /* El color que necesites */} .fila-impar { background-color: /* El color que necesites distinto a fila_par */}
2. En vez del <tr> dentro del bucle for, pones:
--- Código: PHP ---<tr class="<?php echo ($a % 2) == 0 ? 'fila-par' : 'fila-impar' ?>">
:suerte:
cesand:
Muchas gracias shadow.. sin duda que como me decis podria hacerlo pero la verdad no logre comprenderlo hace poco comence con PHP y disculpame pero no entendi tus opciones..
Cuento un poco como imagino podria hacerlo pero no lo se aplicar al codigo lo que pienso puede funcionar seria primero crear una variable simple arriba del for de valor 0 ($b=0) por ejemplo despues hacer un IF con la condicion de que cuando la varable $b sea igual a 0 que pinte la celda y si la variable cambie no va pintar la celda por que la condicion no se va cumplir entonces en alguna parte cambiale el valor a $b para qu eso pase entonces en una vuelta del bucle va pintar y en otra no, claro qu para lograr esto la variable $b despues tiene qu volver a valer 0 y despues otra vez nuevamente cambie y asi indefinidamente.
se podra de esta forma? creo para mi con mis pocos conocimientos mec seria mas facil entender.
F_Tanori:
Como te lo ha propuesto shadow_rev es completamente funcional y practico, de la manera en que lo quieres hacer, solo compruebas la variables si es un valor entonces hay que cambiarla por el otro valor el alternativo
Prueba de esta manera, y aun cuando seas principiante, poco a poco ve avanzando...
--- Código: PHP ---<html><head><title>Documento sin título</title><style> .fila-par { background-color:#FFFFFF; } .fila-impar { background-color:#ECF3F7; }</style> </head> <body><table width="40%" border="3"><tr><td align="center" width="50%"> numero</td><td align="center"> dia</td></tr><?php $colorFila ='fila-par'; for ($a=1;$a <= 7;$a++){ #=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*# ALTERNAR COLORES ##=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* if ('fila-impar'==$colorFila){ $colorFila='fila-par'; }else{ $colorFila ='fila-impar'; }#=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* ?><tr class='<?php echo $colorFila; ?>'><td><?phpecho $a;?></td><td><?phpswitch ($a) {case 1:echo "lunes";break;case 2:echo "martes";break;case 3:echo "miercoles";break;case 4:echo "jueves";break;case 5:echo "viernes";break;case 6:echo "sabado";break;case 7:echo "domingo";break; }?></td> </tr><?php} ?></table> </body></html>
Cuando publiques Codigo aqui en el foro, no te olvides de utilizar las etiquetas CODE es muy facil, solo escribes tu codigo lo seleccionas, y en la barra de herramientas del editor hay un cuadro desplegable que dice 'Code', solo selecciona el lenguaje y listo.
o
Directamente (sin el *)
[*code=php]
//Publicando Codigo PHP con resaltado de Sintaxis; en Solocodigo
$variable='2';
[/code ]
Saludos
shadow_rev:
--- Cita de: "cesand" ---Muchas gracias shadow.. sin duda que como me decis podria hacerlo pero la verdad no logre comprenderlo hace poco comence con PHP y disculpame pero no entendi tus opciones..
--- Fin de la cita ---
Solo puse una sola, pero partida en 2 pasos :P
Lo explico paso a paso:
1. La definición de estilos es para cambiar el aspecto visual del HTML (las famosas hojas de estilo en cascada, o CSS); hasta alli no hay misterio, es HTML básico. Nada mas se definen 2 estilos que cambian el color de fondo a un elemento. Para aplicar ese estilo, nada mas es poner el atributo class="nombre-estilo" al elemento que lo necesita, en nuestro caso, la fila de la tabla.
2. Es lo mismo que puso F_Tanori (EDITO: es mas o menos lo mismo), solo que yo lo hice en una línea :P perdón por eso. En el bucle for, declaras un contador $a, el cuál yo empleo también para determinar el color de la fila. Me preguntas como se hace ?? Sencillo, ($a % 2) es la operación módulo, que te retorna 0 o 1 dependiendo si $a es par o impar (o en otras palabras, si es múltiplo de 2 el resultado es 0, si no lo es el resultado es 1), y ($a % 2) == 0 ? 'fila-par' : 'fila-impar' es una operación con el operador ternario ?, si el primer término ($a % 2) == 0 es true, entonces el resultado es 'fila-par', de lo contrario el resultado es 'fila-impar'. Poniendo echo ($a % 2) == 0 ? 'fila-par' : 'fila-impar' lo que hago es imprimir fila-par si $a es par, o fila-impar si $a es impar, y como esa impresión se hace dentro del contenido del atributo class, el resultado en el navegador es <tr class="fila-par"> si $a es par, y <tr class="fila-impar"> si $a es impar.
Para documentarte un poco sobre HTML y CSS, visita http://www.w3schools.com, y para PHP, no hay nada mejor que su propio origen, http://www.php.net/manual/en (ambos están en inglés).
Espero haberte explicado bien, o por lo menos darte un buen dolor de cabeza :devil:
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa