PDA

View Full Version : سوال: مرتب سازی دادهای فارسی در mysql



saba_rgh
یک شنبه 27 اردیبهشت 1388, 09:34 صبح
سلام
من داده های فارسی رو توی mysql ذخیره کردم ولی وقتی میخوام اونا رو با php نمایش بدم sort نمیشه.collation database هم utf-persian-ci هستش و charset اون utf8.
خیلی search کردم توی هیچ fourm راه حل درستی ارائه نداده بودند. ممنون میشم کمک کنید دیگه نمیدونم باید چه کار کنم؟:ناراحت::ناراحت:

ghasem.fattahpour
یک شنبه 27 اردیبهشت 1388, 09:44 صبح
اگه میشه کدی رو که می نویسی رو اینجا بذار.

ghasem.fattahpour
یک شنبه 27 اردیبهشت 1388, 09:53 صبح
ببین این جواب می ده :

SELECT test, IF(test REGEXP '^[a-zA-Z0-9]', 0, 1) AS sort FROM tabletest ORDER BY sort DESC, test

saba_rgh
یک شنبه 27 اردیبهشت 1388, 12:10 عصر
ببین این جواب می ده :

SELECT test, IF(test REGEXP '^[a-zA-Z0-9]', 0, 1) AS sort FROM tabletest ORDER BY sort DESC, test
سلام
ممنون ولی اینم جواب نداد. کد خاصی ندارم این کدمه
select field_name from table order by field_name که field_name داده های فارسی داره.

امیـرحسین
یک شنبه 27 اردیبهشت 1388, 14:24 عصر
این اسکریپت رو آقای اخگری نوشته اند: Persian Sorting for MySQL (http://ehsanakhgari.org/article/php/persian-sorting-mysql)

ایشون جزء برنامه نویسها فایرفاکس هستند، اسمشون رو توی بخش credits فایرفاکس میبینید.

saba_rgh
دوشنبه 28 اردیبهشت 1388, 09:51 صبح
این اسکریپت رو آقای اخگری نوشته اند: Persian Sorting for MySQL (http://ehsanakhgari.org/article/php/persian-sorting-mysql)

ایشون جزء برنامه نویسها فایرفاکس هستند، اسمشون رو توی بخش credits فایرفاکس میبینید.
سلام
از جوابتون ممنون.
من این اسکریپت و چک کردم. باز هم جواب نداد. :افسرده:

saeidejafari
دوشنبه 28 اردیبهشت 1388, 10:27 صبح
سلام دوستان،
مشابه همین تاپیک توی تالار mysql پرسیده شده ولی به نتیجه نرسیده:
مرتب کردن به ترتیب حروف الفبای فارسی (http://barnamenevis.org/forum/showthread.php?t=77295)
نمیدونم دوستان حرفه ای چجوری داده هاشونو sort میکنن. اصلا راه حلی هست یا نه؟:متفکر:

امیـرحسین
سه شنبه 29 اردیبهشت 1388, 04:59 صبح
من این تابع رو امشب نوشتم. تست کنید. امیدوارم کار کنه و مفید باشه: Sorting همیشه فارسی - تابع Persian Sort (http://boplo.ir/php/psort-function/)

این تابع آرایه رو مرتب می کنه. برای مرتب سازی سطرهای دیتابیس، باید ستون رو بصورت آرایه به این تابع بدید و خروجی رو براساس آرایه جدید نمایش بدید.....

hosseinjn
جمعه 25 دی 1394, 13:32 عصر
سلام
من داده های فارسی رو توی mysql ذخیره کردم ولی وقتی میخوام اونا رو با php نمایش بدم sort نمیشه.collation database هم utf-persian-ci هستش و charset اون utf8.
خیلی search کردم توی هیچ fourm راه حل درستی ارائه نداده بودند. ممنون میشم کمک کنید دیگه نمیدونم باید چه کار کنم؟:ناراحت::ناراحت:

سلام
از این روش مشکلتون حل میشه

order by BINARY name