مشکل نشان دادن کلمات فارسی به صورت علامت سوال در php

سلام به همه کاربران من در حال نوشتن سایتی هستم که اطلاعاتی رو به فارسی در دیتابیس ذخیره میکنه و در صفحات مورد نظر دوباره بازخوانی میکنه و درون متغیر ها ریخته شده و در جای مورد نیاز echo میشه . مشکل من اینه که کلمات به صورت ؟ نشان داده میشن و هرکاری میکنم درست نمیشه در صفحات متا رو utf-8 قرار دادم و در داخل phpmyAdmin هم دیتابیس ها به صورت utf8-general-ci ساخته شده بودن و من بعدا حتی به utf8-persian-ci تغییر دادم ولی درست نشد. در اینترنت هم فانکشن های پیشفرض mysqli رو برای درست شدن این مشکل گذاشتن ولی من بعد از استفاده از اونا (شک دارم درست استفاده کرده باشم) اررور داد و کار هم نکرد. mysqli_query("SET NAMES 'utf8'", $conn); mysqli_query("SET CHARACTER SET 'utf8'", $conn); mysqli_query("SET character_set_connection = 'utf8'", $conn); آیا باید فانکشن ها رو در متغیر ای ذخیره کرد یا راهکار دیگری برای این مشکل هست؟
پاسخ ها

sokanacademy forum
کاربر سکان آکادمی 6 سال پیش
جای پارامترهای سه فانکشن بالا را عوض کنید، یعنی آرگومان اول باید کانکشن باشه و آرگومان دوم رو کوئری بگذارید: mysqli_query($conn, "SET NAME utf8"); mysqli_set_charset($conn, 'utf8'); در ضمن encoding فایل‌ها utf8 باشد و اگر نیست با این انکودینگ سیو کنید.
sokanacademy forum
کاربر سکان آکادمی 6 سال پیش
بعدش این فانکشن هارو داخل همون متغیر $conn ذخیره کنم؟
sokanacademy forum
کاربر سکان آکادمی 6 سال پیش
نه، دقیقا خط زیرش بنویسید، دقیقا باید بعد از هر اتصال یکبار این دستورات را اجرا کنید.
sokanacademy forum
کاربر سکان آکادمی 6 سال پیش
سلام دوست عزیز. منم همین مشکل شما رو در html داشتم. ببنید تنها کاری که باید بکنید اینه که تو ادیتوره کدتون از بخش Encoding اون interpret as UTF-8 without BOM رو به interpret as UTF-8 تغییر بدهید. اون موقع کلمات فارسی رو به خوبی نشان خواهد داد. شاد و پیروز باشید.
sokanacademy forum
کاربر سکان آکادمی 5 سال پیش

سلام 

خیلی ممنونم بخاطر راهنمایی شما 1 ساعت هرکاری کردم صفحه ای که طراحی کردم فارسی بشه نشد ولی با راهنمایی شما راحت شدم چون فارسی شد بازم ممنونم 😃

online-support-icon