我有2个表,用户日志是人们用他们的电子邮件和密码注册的地方,另一个表用户名是用户完成他们自己的配置文件的用户名。问题php和MySQL
如何使用SQL查询插入插入表单中的数据?
考虑到表用户与用户表记录与id引用...
我的意思是
User log
Id
Email
Password
User
Id
User_id fk id reference userlog(id)
Name
Surname
这是代码至极我在
<?php
session_start();
if (isset($_SESSION['usuario'])) {
header('Location: index.php');
}
$errores = '';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$email = filter_var(strtolower($_POST['email']), FILTER_SANITIZE_STRING);
$password = $_POST['password'];
$password = hash('sha512', $password);
try {
$conexion = new PDO('mysql:host=localhost;dbname=DATABASE, 'USER', 'PASS');
} catch (PDOException $e) {
echo "Error:" . $e->getMessage();;
}
$statement = $conexion->prepare('
SELECT * FROM userlog WHERE email = :email AND password = :password'
);
$statement->execute(array(
':email' => $email,
':password' => $password
));
$resultado = $statement->fetch();
if ($resultado !== false) {
$_SESSION['usuario'] = $resultado;
header('Location: index.php');
} else {
$errores .= '<li>Datos Incorrectos</li>';
}
}
做出的日志
我做了一个var_dump()来查看$ resultado中的数组是什么,它使我获得了表的数据,但是当我想用数据填充输入时,它失败了
你为什么不尝试基本的谷歌搜索?你几乎可以在几秒钟内得到一个教程。或者提供一些代码 – Akintunde007
**警告**:编写您自己的访问控制层并不容易,并且有很多机会使其严重错误。请不要在[Laravel](http://laravel.com/)等任何现代开发框架(http://codegeekz.com/best-php-frameworks-for-developers/)上编写自己的认证系统,内置了强大的[认证系统](https://laravel.com/docs/5.4/authentication)。绝对不要遵循[推荐的安全最佳实践](http://www.phptherightway.com/#security)和**从不将密码存储为纯文本**。 – tadman
为什么有两张桌子?数据似乎总是一对一的关系。 – chris85