سلام دوست عزیز
باید همیشه یسری چیز هارو چک کنی
1- موقع ساخت دیتا بیس تنظیمات collation دیتا بیس رو روی utf8_general_ci یا utf8_persian_ci قرار بدی. 2- موقع ساخت تیبل هم تنظیمات collation رو روی یکی از این دو مورد قرار بده
3- هر فیلدی که توی تیبل قراره نوشته فارسی داخلش نوشته بشه رو هم باید طبق بالا روی یکی از این دو مورد بزاری
4- قبل از هر کاری روی دیتا بیس این دستور اجرا باید بشه
mysql_query('SET NAMES UTF8;');
این موارد پیش فرض دیتا بیس هست که توی مراحل بالاتر که از PDO استفاده بشه تنظیمات فرق داره (البته فقط مورد 4)
اما یه مورد دیگه هم هست که باید رعایت کنی و به HTML مربوط هست. استفاده از کد:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
این کد هم اگر نباشه توی HTML میتونه دیتا رو بهم بریزه ایشاالله که مشکلت حل میشه