Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/06/2020, 13:50
jose_fc
 
Fecha de Ingreso: septiembre-2011
Mensajes: 34
Antigüedad: 12 años, 6 meses
Puntos: 0
Pregunta Error al registrar un resultado en mysql con php

Saludos Amigos.
Quisiera que, me ayudaran con un problema que tengo.

Lo que quiero es, insertar datos de un formulario que, tiene información de un alumno y sus notas, pero, también, quiero agregar una suma, la cual se calcula solo, es decir, toma los valores que están el los campos de texto y saca un promedio con ellos.
Bien, el tema es que, la operación la coloco dentro de este código
Código PHP:
Ver original
  1. if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  2.  
  3.          $suma = "0";
  4.      $n1 = $_POST['n1'];
  5.      $n2 = $_POST['n2'];
  6.      $n3 = $_POST['n3'];
  7.      $suma = $n1+$n2+$n3;
  8.    
  9.      include("../includes/funciones.php");
  10.    
  11.     if (chekaAsignatura($_POST["IdAsignatura"], $_POST["NumMatricula"])){  
  12.    
  13.         $mensaje = "La asignatura, ya ha sido asignada al alumno en este semestre";
  14.         echo "<script>";
  15.         echo "alert('$mensaje');";  
  16.         //header("Location:notas_edit.php");
  17.         //echo "window.location.href = 'admin/notas_edit.php?IdAsignatura=$_POST[IdAsignatura]&RecordRun=$_POST[run_alumno]&IdSem=$_POST[IdSemestre]';";
  18.         echo "</script>";  
  19.      
  20.     }else{
  21.             $insertSQL = sprintf("INSERT INTO calificacion (NumMatricula, IdAsignatura, IdSemestre, n1, n2, n3, n4, n5, n6, n7, n8, n9, n10, promedio) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
  22.                        GetSQLValueString($_POST['NumMatricula'], "int"),
  23.                        GetSQLValueString($_POST['IdAsignatura'], "int"),
  24.                        GetSQLValueString($_POST['IdSemestre'], "int"),
  25.                        GetSQLValueString($_POST['n1'], "int"),
  26.                        GetSQLValueString($_POST['n2'], "int"),
  27.                        GetSQLValueString($_POST['n3'], "int"),
  28.                        GetSQLValueString($_POST['n4'], "int"),
  29.                        GetSQLValueString($_POST['n5'], "int"),
  30.                        GetSQLValueString($_POST['n6'], "int"),
  31.                        GetSQLValueString($_POST['n7'], "int"),
  32.                        GetSQLValueString($_POST['n8'], "int"),
  33.                        GetSQLValueString($_POST['n9'], "int"),
  34.                        GetSQLValueString($_POST['n10'], "int"),
  35.                        GetSQLValueString($_POST[$suma], "decimal"));
  36.  
  37.   mysql_select_db($database_Conn, $Conn);
  38.   $Result1 = mysql_query($insertSQL, $Conn);
  39.  
  40.   $insertGoTo = "../admin/notas_lista.php?NMatricula=".$_POST["NumMatricula"]."&IdSem=".$_POST['IdSemestre']."&sum=".$suma;
  41.   if (isset($_SERVER['QUERY_STRING'])) {
  42.     $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
  43.     $insertGoTo .= $_SERVER['QUERY_STRING'];
  44.   }
  45.   header(sprintf("Location: %s", $insertGoTo));
  46. }
  47. }
realiza bien la insersión, pero, cuando veo la base de datos me muestra el valor 0,99 de la suma realizada. Algo no estoy viendo. ojalá me puedan ayudar. Gracias.