PHP - Error al insertar datos

 
Vista:
sin imagen de perfil
Val: 22
Ha aumentado su posición en 3 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error al insertar datos

Publicado por Dany (10 intervenciones) el 31/10/2017 20:47:35
Hola a todos una vez mas,

Creo que este es el foro adecuado si no lo es favor de moverlo a MySql.

Tengo un formulario en HTML (RegistroEstudiantes) en el cual ingreso los datos del estudiante y posteriormente guardarlos en MySQL por medio de un boton. Los datos seran ingresados usando el Driver de PHP (NO Mysqli) pero al dar clic al boton ingresar del formulario me aparece un error del cual me indica la linea 52 mysql_close($conexion); segun creo no esta mal esta linea.

Les comparto todo el codigo PHP para ver si me puedan ayudar a encontrar el error.

NOTA: Este mismo ejercicio lo hice con el Driver Mysqli y no tuve problemas ahora lo tengo que hacer con el driver de php y no me queda este es el error:

Error:SQLSTATE[HY000] [1045] Access denied for user ''@'localhost' (using password: NO)
Fatal error: Uncaught Error: Call to undefined function mysql_close() in C:\xampp\htdocs\PHP\P2_Insert\InsertPHP.php:52 Stack trace: #0 {main} thrown in C:\xampp\htdocs\PHP\P2_Insert\InsertPHP.php on line 52

Codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
 
$host = "localhost";
$user = "Admin";
$pass = "undertaker5503";
$dbname = "escuela";
 
try{
 
    $conexion=new PDO("mysql:host=$host;dbname=$dbname,$user,$pass");
    echo "Conexion exitosa, usando el driver de PHP <br/><br/>";
    //Almacenando los datos en variables
$nivel=$_POST["nivel"];
$usuario=$_POST["usuario"];
$correo=$_POST["correo"];
$password=$_POST["password"];
$nombre=$_POST["nombre"];
$tipo=$_POST["tipo"];
$avatar=$_POST["avatar"];
 
//Consulta de inserción de datos
//$comando = "INSERT INTO usuarios (nivel, usuario, correo, password, nombre, tipo, avatar) VALUES (1, 'Rodrigo', 'r_perez.hotcakes.com', 'lalo', 'Rodrigo Codera', 'Admin', 'Codo')";
 
$comando = "INSERT INTO usuarios (nivel, usuario, correo, password, nombre, tipo, avatar) VALUES ('$nivel','$usuario','$correo','$password','$nombre','$tipo','$avatar')";
 
//echo $comando;
$conexion->exec($comando);
echo "Registro guardado";
$conexion=null;
}
 
catch(PDOException $e)
{
echo "Error:" .$e->getMessage();
}
 
/*if(!$conexion)
{die ("Error:" .mysql_connect_error());
}
else
{echo "Conexion exitosa <br/><br/>";
}*/
 
 
//echo $comando;
/*{echo "Registro guardado";
}
else
{echo "Error " .mysqli_error($conexion);
}*///Fin del query
 
mysql_close($conexion);
//Fin de conexion
?>


Espero puedan ayudarme.

Saludos

DS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Error al insertar datos

Publicado por xve (6935 intervenciones) el 01/11/2017 08:28:35
Hola Dany, si utilizas PDO, no puedes utilizar los comando mysql_...

utiliza:
1
$conexion=null;

De todas maneras, cuando finaliza la ejecución del archivo, se cierran todas las conexiones a la base de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 22
Ha aumentado su posición en 3 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error al insertar datos

Publicado por Dany (10 intervenciones) el 03/11/2017 15:18:31
He corregido lo que me comentas asi:

$conexion=null;

Ahora me marca erro en la linea 14.

1
2
3
4
5
6
7
8
9
10
11
12
13
try{
 
    $conexion=new PDO("mysql:host=$host;dbname=$dbname,$user,$pass);
    echo 'Conexion exitosa, usando el driver de PHP <br/><br/>';

    //Almacenando los datos en variables
$nivel=$_POST["nivel"];<<<<<<Aqui
$usuario=$_POST["usuario"];
$correo=$_POST["correo"];
$password=$_POST["password"];
$nombre=$_POST["nombre"];
$tipo=$_POST["tipo"];
$avatar=$_POST["avatar"];

Lo compare con la otra conexion que tengo y esta igual mismas variables en mismos campos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar