سلام وقتتون بخیر چجوری میتونم این ارور رفع کنم.همین کدها و دیتابیس هارو در سیستم کلاس اجرا میکنم بدون هیچ مشکلیrun میشه ولی با سیستم خودم به این ارور بر میخورم .میتونه مشکل نصبی باشه ازxamppیا phpmyadmin.ممنونتونم راهنماییم کنید.
`Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''utf8'' at line 1 in C:\xampp2\htdocs\divar\config\connection.inc.php:15 Stack trace: #0 C:\xampp2\htdocs\divar\config\connection.inc.php(15): mysqli->query('set NAME 'utf8'') #1 C:\xampp2\htdocs\divar\php\auth\register.php(10): include('C:\\xampp2\\htdoc...') #2 {main} thrown in C:\xampp2\htdocs\divar\config\connection.inc.php on line 15`
(کد connection.inc.php)
$servername = "localhost";
$username = "root";
$password = "";
$db = "divar";
// Create connection
$link = mysqli_connect($servername, $username, $password , $db);
// Check connection
if (!$link) {
die("Connection failed: " . mysqli_connect_error());
}
$link->query("set NAME 'utf8'");
$link->query("set CHARACTER SET 'utf8'");
?>```
@MrMobin
@magicaldev1
(ارور)
Fatal error: Uncaught mysqlisqlexception: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''utf8'' at line 1 in C:\\xampp2\\htdocs\\divar\\config\\connection.inc.php:15 Stack trace: #0 C:\\xampp2\\htdocs\\divar\\config\\connection.inc.php(15): mysqli->query('set NAME 'utf8'') #1 C:\\xampp2\\htdocs\\divar\\php\\auth\\register.php(10): include('C:\\xampp2\\htdoc...') #2 {main} thrown in C:\\xampp2\\htdocs\\divar\\config\\connection.inc.php on line 15
@MrMobin
@magicaldev1
ممنونم
حتما نسخه php تون رو چک کنید ، اگه زیر 5.3.7 بودش ، یه متغیر بسازید ( مثلا dbh ) و همچین مقادیری رو بهش پاس بدید :
$dbh = new PDO("mysql:$connstr", $user, $password);
بعد از این کد استفاده کنید :
$dbh -> exec("set names utf8");
اگه متوجه نشدید اینجا رو چک کنید:
https://stackoverflow.com/questions/4361459/php-pdo-charset-set-names
ابتدا از دیتا بیس کلاس یک ایمپورت تهیه کنید
سپس در سیستم خود توت زمانی که دارید دیتابیس کریت میکنید حتما خاطر تون باشه از utf8 استفاده کنید توی لیست میتونید utf8 persian رو انتخاب کنید و در نهایت فایل اکسپورت شده تون رو دورن دیتابیس ایمپورت کنید
سلام .
ارور مربوط به 2 لاین آخر کد هستش . شما بهتره این موارد رو از داخل خود phpmyadmin برای اینکه اول کار هستید مشخص کنید . اینطوری بهتره ولی لاین اول ر و به SET NAMES utf8 تغییر بدید . لاین دوم هم پاک کنید . ارور برطرف خواهد شد و کار همون قبلی رو انجام خواهد داد . بقیه کد مشکلی نداره .
موفق باشید
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟