Foros del Web » Programando para Internet » PHP »

pasar un input tipo array a una suma

Estas en el tema de pasar un input tipo array a una suma en el foro de PHP en Foros del Web. Hola tengo el siguiente segmento de codigo el cual no consigue me quede Código PHP: <form action=" <?php  echo  $editFormAction ;  ?> " method="post" id="form1">   <?php  do {  ...
  #1 (permalink)  
Antiguo 31/05/2012, 18:34
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
pasar un input tipo array a una suma

Hola tengo el siguiente segmento de codigo el cual no consigue me quede
Código PHP:
<form action="<?php echo $editFormAction?>" method="post" id="form1">
 <?php do { ?>

<input   type="text"  name="p1[]" id="p1" value="<?php echo $row_calificarm['parcial1']; ?>"  size="3"  disabled />  


Estoy tratando de usar este valor para hacer una suma pero no me da arroja dato

<input type="text" name="prom[]" id="prom" value="  <?php  $Promedio=($row_calificarm['parcial1']+$row_calificarm['parcial2']+ $p3)/3; echo number_format ($Promedio,2); ?> "size="3"  />

 <?php } while ($row_calificarm mysql_fetch_array($calificarm)); ?>
Ya intente poniendo los corchetes a $p3 pero sigue igual...

solo suma los valores de p1 y p2 (los cuales los recoje de la BBDD)

GRACIAS POR SU AYUDA
  #2 (permalink)  
Antiguo 31/05/2012, 18:36
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: pasar un input tipo array a una suma

no se entiende en absoluto lo que intentas hacer, aparte, no es recomendable usar un "do while" en una sentencia SQL, ya que aunque MySQL no retorne ningún resultado PHP dará una "vuelta" (ejecutará 1 vez) al do while por lo tanto intentará mostrar un resultado que no existe, en cambio con solo usar while si MySQL no retorna ningún resultado el while no se ejecutará
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 31/05/2012, 18:50
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: pasar un input tipo array a una suma

Cita:
Iniciado por Nemutagk Ver Mensaje
no se entiende en absoluto lo que intentas hacer, aparte, no es recomendable usar un "do while" en una sentencia SQL, ya que aunque MySQL no retorne ningún resultado PHP dará una "vuelta" (ejecutará 1 vez) al do while por lo tanto intentará mostrar un resultado que no existe, en cambio con solo usar while si MySQL no retorna ningún resultado el while no se ejecutará
Gracias por el dato... bueno lo que intento hacer es tomar el valor de mi input p3 para sumarlo a los valores de p2 y p3 y obtener un promedio

<input type="text" name="prom[]" id="prom" value=" <?php $Promedio=($row_calificarm['parcial1']+$row_calificarm['parcial2']+ $p3)/3; echo number_format ($Promedio,2); ?>


Pero no consigo pasar el valor de p3 supongo q es porque es un array estoy leyendo y parece q se debe hacer con un foreac pero no consigo lograrlo
  #4 (permalink)  
Antiguo 31/05/2012, 18:58
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: pasar un input tipo array a una suma

Cita:
...Pero no consigo pasar el valor de p3 supongo q es porque es un array...
por array estoy suponiendo que estas hablando de...

Código:
array(
     'item1',
     'item2',
     'item3',
     'item4',
     'item5'
)
En todo caso, no es posible, aparte, deberías definir realmente lo que intentas hacer, intentas sumar todos los items dentro del array? o intentas acceder a un solo item?, se mas clara (?)
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #5 (permalink)  
Antiguo 31/05/2012, 19:38
Avatar de patriciomase  
Fecha de Ingreso: abril-2012
Ubicación: Mar del Plata
Mensajes: 323
Antigüedad: 12 años
Puntos: 34
Respuesta: pasar un input tipo array a una suma

de donde sale $p3? no se ve de donde viene!
  #6 (permalink)  
Antiguo 01/06/2012, 09:15
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: pasar un input tipo array a una suma

estoy recorriendo ahora con foreach
Código PHP:
if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) {

   foreach(
$_POST["clave3"] as $i => $value){


               
$clave$_POST['claveasignatura'][$i];
                 
$rfc$_POST['clave3'][$i];
                 
$p1=$_POST['p1'][$i];
                  
$p2=$_POST['p2'][$i];
                 
$p3=$_POST['p3'][$i];
                 
$prom=$_POST['prom'][$i];
                
                
$query=mysql_query("update calificarm SET  parcial3='$p3', promedio='$prom' WHERE claveasignatura='$clave' and rfcalumno='$rfc'");
                     
$suma=$p1+$p2+$p3;
 
     
  
mysql_select_db($database_connection$connection);


  
$updateGoTo "maestrias3.php"
Pero al momento de mostrar en mi formulario suma no me arroja nada...
<?php do { ?>

<tbody>
<tr>

<td><?php $i+=1; echo $i;?></td>
<td ><input type="text" name="clave3[]" id="clave3" value="<? echo $row_calificarm['rfcalumno']; ?>" size="10" style="border: none; background:#e6e6e6 "/></td>

?></td>
<td><?php echo $suma;

?></td>

</td>








<td> <input type="hidden" name="claveasignatura[]" id="claveasignatura" value="<?php echo $row_asignaturasm['claveasignatura']; ?>" /></td>

</tr>
</tbody>
<?php } while ($row_calificarm = mysql_fetch_array($calificarm)); ?>

... en el formulario se muestran determinados alumnos dependiendo su grado y carrera... (supongo q al no ser un solo alumno esto me hace trabajar con arrays ya consegui actualizar varios registros a la vez lo que no logro es pasar esa suma
  #7 (permalink)  
Antiguo 01/06/2012, 09:21
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: pasar un input tipo array a una suma

deberías mejor mostrar todo el código de ese archivo, ya que no sabemos de donde provienen variables, por lo tanto no sabemos el posible dato que guardan, también seria bueno que mostrarás el código del formulario, si no, es estar dando palos(golpes) en la oscuridad....
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Etiquetas: input, mysql, suma, tipo
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 23:58.