با سلام
سوال من مربوط به فیلم جلسه sql injection است
من داشتم طبق آموزش عمل میکردم که با خطای زیر مواجه شدم
Error : SQLSTATE[42S22]: Column not found: 1054 Unknown column 'ssss' in 'where clause'نمونه کد من
<?php
$hostName = "localhost";
$dbUser ="root";
$dbPass = "";
$dbName = "dbtest";
try {
$connection = new PDO("mysql:host=$hostName;dbname=$dbName",$dbUser,$dbPass);
$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT * FROM `users` WHERE `id` =" . $_GET['id'] . " AND `password` = " . $_GET['password'];
$statement = $connection->query($sql);
$users = $statement->fetchAll();
foreach ($users as $user) {
var_dump($user);
}
} catch (PDOException $e) {
echo "Error : " . $e->getMessage();
}
?>
سوال اصلی من اینه
من وقتی از پسوردی استفاده می کنم که فقط عدد است همه چیز درست است و نتیجه را نمایش میدهد
"مشخصا فیلد پسورد varchar(255) می باشد"
اما وقتی داخل پسورد از حروف استفاده میشود ارور بالا را نمایش میدهد
ممنون میشم راهنمایی بفرمایید
-----
ورژن php 7.4
ورژن 8 mysql