y una disculpa si no escribo en inglés, ya que no es bueno mi inglés, en concreto: estoy usando webhost000 y estoy haciendo uso de su base de datos phpMyAdmin, siguiendo el tutorial de un chico [ https://www.youtube.com/watch?v=xcApdMPzS1s&list=PLlYd6e7tOfNgoOSjh06VVKbZLmZDAFxtK&index=7 ], e seguido sus pasos, sin embargo, al registrar un usuario desde la app como el lo hace me aparece el error que muestra el título, y la verdad no se que hacer, se que me dice que no tengo permisos, sin embargo 2 puntos importantes, 1. el error menciona una base de datos "information_schema" la cual no estoy citando por que la mía se llama "id22391083_testbd" , 2. no se como hacer para arreglarlo adjunto mis archivos de conexión mediante php, ¿Qué está mal o que debería hacer? espero contar con su ayuda de ante mano muchas gracias.
archivo: connection.php
<?php
//script que hace la conexión con la BD
$host = 'localhost';
$dbname = 'id22391083_testbd';
$user = 'id22391083_lodevil25';
$pass = 'VWmxtlmINwfEVX4$';
// echo json_encode([
// "msg"=>"la solicitud funciona"
// ]);
try {
$db = new PDO("mysql:host = $host; dbname = $dbname", $user, $pass);
//echo "conectado";
} catch (\Throwable $th) {
//echo 'Error: '.$th -> getMessage();
}
?>`
archivo: register.php
`<?php
include 'connection.php';
$name = $_POST['name'];
$email = $_POST['email'];
$pass = sha1($_POST['pass']); //sha1 supongo es para cifrar el password
try {
if(isset($name, $email, $pass)){
$req = $db->prepare("INSERT INTO users VALUES(null,?,?,?)");
$req->execute(array($name, $email, $pass));
if($req){
$success = 1;
$msg = 'registrado correctamente';
}else {
$success = 0;
$msg = 'error al registrar';
}
}else {
$success = 0;
$msg = 'error datos vacíos';
}
}catch (\Throwable $th){
$success = 0;
$msg = "Error en catch: ".$th->getMessage();
}
echo json_encode([
"dataaa"=>[
$msg,
$success
]
]);
?>
espero poder registrar desde mi app, mi primer usuario
sha1
should not be being used for hashing passwords. See stackoverflow.com/questions/30279321/…