error Column count doesn’t match value count at row 1

publicado por: Anonymous

estoy tratando de guardar un formulario en la base de datos MySQL, pero cuando trato de ejecutar para guardar, me muestra este error:

Column count doesn’t match value count at row 1

En el formulario solo tengo los campos necesarios, los otros no los pongo ya que deben quedar vacios en la BD.

Esta es mi BD

id | cel | token | usuario | password | direccion | r_lat | r_lng | r_ruta | jornada | sede | r_tipo | acudiente | alumno | pos | mensaje | tarifa |
----------------------------------------------------------------------------------------------------------------------------------------------------
   |     |       |         |          |           |       |       |        |         |      |        |           |        |     |         |        |

Y este es el PHP que ejecuta el formulario:

function myapp() {
    global $connect;    

    $direccion = $_POST['direccion'];
    $r_lat = $_POST['r_lat'];
    $r_lng = $_POST['r_lng'];
    $alumno = $_POST['alumno'];
    $acudiente = $_POST['acudiente'];
    $r_cel = $_POST['r_cel'];
    $r_ruta = $_POST['r_ruta'];
    $jornada = $_POST['jornada'];   
    $sede = $_POST['sede'];
    $usuario = $_POST['usuario'];
    $password = $_POST["password"];
    $r_tipo = $_POST['r_tipo']; 
    $tarifa = $_POST['tarifa']; 

    $EncryptPassword = md5($password);

   $query = "Insert into escolarBotar 
            (
                direccion, 
                r_lat, 
                r_lng, 
                alumno, 
                acudiente, 
                r_cel, 
                r_ruta, 
                jornada, 
                sede, 
                usuario, 
                password, 
                r_tipo, 
                tarifa
            ) VALUES (
                '$direccion', 
                '$r_lat', 
                '$r_lng', 
                '$alumno', 
                '$acudiente', 
                '$r_cel', 
                '$r_ruta', 
                '$jornada', 
                '$sede', 
                '$usuario', 
                '$password', 
                '$r_tipo', 
                '$tarifa', 
                '$EncryptPassword'
            )";

    mysqli_query( $connect, $query )or die( mysqli_error( $connect ) );
    mysqli_close( $connect );
    echo " Encrypted Password Added Successfully ";
}

Soy nuevo en PHP y MySql aprendiendo

solución

Tu problema es queestas insertando dos veces el atributo password.
primero lo insertas asi: '$password' y luego lo vuelves a insertar así: '$EncryptPassword'.

Lo que tienes que hacer es insertar solo uno ya sea '$password' que guarda la contraseña normal o '$EncryptPassword' que la guarda encriptada, pero no se pueden guardar las dos a la vez.
y si quieres conservar en la bd la contraseña encriptada debes colocarla donde está el atributo '$password'.

Prueba como te digo. Espero que mi respuesta de ayude

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *