Foros del Web » Programando para Internet » PHP »

Ayuda con formulario

Estas en el tema de Ayuda con formulario en el foro de PHP en Foros del Web. bueno hace poco que estoy iniciando en esto del php y me pidieron como tarea crear un programa que obtenga promedios. como se ve en ...
  #1 (permalink)  
Antiguo 16/10/2010, 21:05
 
Fecha de Ingreso: agosto-2010
Mensajes: 19
Antigüedad: 13 años, 8 meses
Puntos: 0
Ayuda con formulario

bueno hace poco que estoy iniciando en esto del php y me pidieron como tarea crear un programa que obtenga promedios.
como se ve en el siguiente codigo de la primera pagina se solicita una cantidad de alumnos y una cantidad de notas...


Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Obt&eacute;n tu promedio</title>
<style type="text/css">
<!--
body {
    background-color: #F4FA58;
}
-->
</style></head>

<body>
<H1 align="center">Obtenedor de promedio</H1>
<FORM method="POST" action="http://localhost/promedio_ingreso_datos.php" name="primerFormulario">
<BR>
<BR>
<table width="800" border="0">
  <tr>
    <th width="400" scope="col"><div align="right">Elije la cantidad de alumnos: 
        <select name="cant_alumnos" id="cant_alumnos">
                                             <?php
                                               for($a=1;$a<=1000;$a++)
                                               {
                                                $alum=$a;
                                                   echo "<option value='$alum'>$alum</option>";
                                               }
                                        ?>
        </select>
    </div></th>
    <th width="400" scope="col"><div align="right">Elije la cantidad de notas: 
        <select name="cant_notas" id="cant_notas">
                                           <?php
                                               for($n=1;$n<=100;$n++)
                                               {
                                                   $not=$n;
                                                   echo "<option value='$not'>$not</option>";
                                               }
                                               ?>
        </select>
    </div></th>
</tr>
</table>
<BR>
<BR>
<BR>
<div align="center"><INPUT type="submit" name="enviar" value="Siguiente"></div>
</FORM>
</body>
</html> 
luego en este codigo se toman los datos obtenidos y se crea una lista de inputs para cada alumno y sus respectivas notas...

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Ingreso de datos</title>
<style type="text/css">
<!--
body {
    background-color: #F4FA58;
}
-->
</style></head>

<body>
<H1 align="center">Obtenedor de promedio</H1>
<H3 align="center">Ingresa los datos requeridos</H3>
<FORM method="POST" action="http://localhost/promedio_calculo_final.php" name="segundoFormulario">
<BR>
<BR>
<?php
     $cAlumnos = $_POST['cant_alumnos'];
     $cNotas = $_POST['cant_notas'];
     
     for($j=1;$j<=$cAlumnos;$j++)
     {//abro for 1
         
?>
------------------------------------------------------------<BR>        
        <b>Nombre Alumno <?php echo $j ?>:</b><input name="name<?php echo $j ?>" type="text"><BR><BR>
        <?php
            for($r=1;$r<=$cNotas;$r++)
            {//abro for 2
                $notas=$r;
                echo "<b>Nota $notas:</b> <BR>";
        ?>
                <input name="grade<?php echo $r ?>" type="text"><BR><BR>
                <?php
            }//cierre for 2
                
     }//cierre for 1
                 ?>
<BR>
<div align="center"><INPUT type="submit" name="ultimo_enviar" value="Enviar datos"></div>
</FORM>
</body>
</html> 
ahora mi duda es la siguiente: ¿como puedo obtener todos los datos ingresados de este formulario para poder procesar cada uno de ellos y asi obtener su promedio?

trate de hacerlo con array pero no me resulto porque como les digo estoy recien comenzando en php
me gustaria que me ayudaran para poder hacerlo
espero haberme expresado claramente
de antemano ¡gracias!
  #2 (permalink)  
Antiguo 17/10/2010, 20:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Tema movido desde Configuración PHP a PHP
  #3 (permalink)  
Antiguo 17/10/2010, 22:57
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Respuesta: Ayuda con formulario

lo que podes hacer es que a cada campo le podes poner un nombre asi por ejemplo nombre-1 y ala hora de procesar sacas la cantidad de usuario que se mostraron y haces lo siguiente:
Código PHP:
$inicio 1;
while (
$inicio != $cantiadad_usuario) {
$alumno $_POST['nombre-'.$inicio]
// y asi haces las otras operaciones que tengas que hacer

$inicio++;

claro esta es solo una idea, deberias de analizarla.

Espero ayude!
  #4 (permalink)  
Antiguo 18/10/2010, 11:19
 
Fecha de Ingreso: agosto-2010
Mensajes: 19
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Ayuda con formulario

Cita:
Iniciado por ColdFusion Ver Mensaje
lo que podes hacer es que a cada campo le podes poner un nombre asi por ejemplo nombre-1 y ala hora de procesar sacas la cantidad de usuario que se mostraron y haces lo siguiente:
Código PHP:
$inicio 1;
while (
$inicio != $cantiadad_usuario) {
$alumno $_POST['nombre-'.$inicio]
// y asi haces las otras operaciones que tengas que hacer

$inicio++;

claro esta es solo una idea, deberias de analizarla.

Espero ayude!
gracias ColdFusion
luego lo probare y te contare como me fue
  #5 (permalink)  
Antiguo 18/10/2010, 14:07
 
Fecha de Ingreso: agosto-2010
Mensajes: 19
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Ayuda con formulario

Cita:
Iniciado por AndresFomeyko Ver Mensaje
gracias ColdFusion
luego lo probare y te contare como me fue
Cita:
Iniciado por ColdFusion Ver Mensaje
lo que podes hacer es que a cada campo le podes poner un nombre asi por ejemplo nombre-1 y ala hora de procesar sacas la cantidad de usuario que se mostraron y haces lo siguiente:
Código PHP:
$inicio 1;
while (
$inicio != $cantiadad_usuario) {
$alumno $_POST['nombre-'.$inicio]
// y asi haces las otras operaciones que tengas que hacer

$inicio++;

claro esta es solo una idea, deberias de analizarla.

Espero ayude!
Probe con tu codigo y creo que puede resultar pero ahora necesito obtener una variable de la pagina anterior que seria $cAlumnos y $cNotas para poder utilizarla en el while, quedaria mas o menos asi...

Código PHP:
$inicio 1;
while (
$inicio != $cAlumnos+&& $cNotas+1
{
$alumno $_POST['name'.$inicio];
$notas $_POST['grade'.$inicio];

echo 
$alumno;
echo $

$inicio++;

  #6 (permalink)  
Antiguo 18/10/2010, 14:10
 
Fecha de Ingreso: agosto-2010
Mensajes: 19
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Ayuda con formulario

Cita:
Iniciado por AndresFomeyko Ver Mensaje
gracias ColdFusion
luego lo probare y te contare como me fue
Cita:
Iniciado por ColdFusion Ver Mensaje
lo que podes hacer es que a cada campo le podes poner un nombre asi por ejemplo nombre-1 y ala hora de procesar sacas la cantidad de usuario que se mostraron y haces lo siguiente:
Código PHP:
$inicio 1;
while (
$inicio != $cantiadad_usuario) {
$alumno $_POST['nombre-'.$inicio]
// y asi haces las otras operaciones que tengas que hacer

$inicio++;

claro esta es solo una idea, deberias de analizarla.

Espero ayude!
Probe con tu codigo y creo que puede resultar pero ahora necesito obtener una variable de la pagina anterior que seria $cAlumnos y $cNotas para poder utilizarla en el while, quedaria mas o menos asi...

Código PHP:
$inicio 1;
while (
$inicio != $cAlumnos+&& $cNotas+1
{
  
$alumno $_POST['name'.$inicio];
  
$notas $_POST['grade'.$inicio];

   echo 
$alumno;
   echo 
$notas;

$inicio++;

el problema es que como dije recien no puedo obtener las variables $cAlumnos y $cNotas que ocupe en la pagina anterior...
¿Como lo puedo hacer?

Última edición por AndresFomeyko; 18/10/2010 a las 14:25 Razón: El post anterior quedo malo y no lo pude borrar. Este es el que cuenta.
  #7 (permalink)  
Antiguo 18/10/2010, 18:44
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Respuesta: Ayuda con formulario

ok, supongo que en el formulario hay un campo llamado cAlumnos y uno llamado cNotas, si es asi entonces ponemos asi
Código PHP:
$inicio 1;
$cAlumnos $_POST['cAlumnos'];
$cNotas $_POST['cNotas'];
while (
$inicio != $cAlumnos+&& $cNotas+1) { 
Ahora, no se para porque estas usando
Código PHP:
$inicio != $cAlumnos+&& $cNotas+
creo que la variable $cAlumnos contiene la cantidad de alumnos, si es asi entonces no deberias usar $cNotas.

deberia ser asi:
Código PHP:
$inicio 1;
$cAlumnos $_POST['cAlumnos'];
//$cNotas = $_POST['cNotas'];

while ($inicio != $cAlumnos
{
  
$alumno $_POST['name'.$inicio];
  
$notas $_POST['grade'.$inicio];

   echo 
$alumno;
   echo 
$notas;

$inicio++;

  #8 (permalink)  
Antiguo 19/10/2010, 15:17
 
Fecha de Ingreso: agosto-2010
Mensajes: 19
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Ayuda con formulario

finalmente lo pude terminar
quedo asi...

Código PHP:
<?php
$numero_alumnos 
$_POST['cant_alumnos'];
$numero_notas $_POST['cant_notas'];
$inicio 1;
$inicio_notas 1;

    while (
$inicio != $numero_alumnos+1
    {
        
$alumno $_POST['name'.$inicio];
        
?>        
------------------------------------<BR>
<?php
        
echo "<b>Alumno $inicio: </b>$alumno<BR>";
        for(
$i=1;$i<=$numero_notas;$i++)
        {
            
$notas $_POST['grade'.$inicio_notas];
            echo 
"<b>Nota $i: </b>$notas<BR>";
            
$temporal=$notas;
            
$promedio=$promedio+$temporal;
            
$inicio_notas++;
        }
        
$inicio++;
        
$promedio_final=$promedio/$numero_notas;
        echo 
"<b>Promedio: </b>$promedio_final<BR>";
        
$promedio=0;
        
$promedio_final=0;
    }
?>
muchas gracias por tu ayuda ColdFusion
  #9 (permalink)  
Antiguo 19/10/2010, 18:41
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Respuesta: Ayuda con formulario

Que bien, me alegra ;).. seria bueno que alguien me diera mi primer punto karma xD hasta pronto

Etiquetas: formulario
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 13:22.