برگزیده های پرشین تولز

کوئری فارسی (دریافت متغیر از طریق متد GET)

iranii

Registered User
تاریخ عضویت
1 جولای 2005
نوشته‌ها
512
لایک‌ها
30
با سلام
من الان این کوئری رو برای نمونه دارم :
از طریق متد GET میخوام از متغیری که میگیرم
کوئری بگیرم اما نمیشه چون کاراکترهاش تبدیل میشه.

مثلا الان سلام ارسال میشه که از دیتابیس
در مورد سلام جستجویی انجام بشه اما تبدیل میشه به
http://localhost/w.php?id=%D3%E1%C7%E3
و هیچ نتیجه ای در بر نداره در صورتی که مثلا در چندین بخش
در فیلدهای مورد نظر سلام قرار داده شده. حالا کافی همین
کلمه به انگلیسی باشه انجام میشه.

به چه صورت میشه این مورد رو حل کرد؟
که با زدن کلمات و جملات فارسی هم نتایج رو بشه گرفت.

البته در اینجا متد گت یا پست تفاوتی نداره.

همچنین کلیشن فیلدها utf8_persian_ci هست و موقع ارتباط هم کوئری SET NAMES SET utf8 اجرا میشود.
 

sama_sally

Registered User
تاریخ عضویت
5 آپریل 2005
نوشته‌ها
2,598
لایک‌ها
1
سن
35
محل سکونت
Essen, Deutschland
در اين مورد نگران نباش. اگر اينطوري باشه بهتره - درست تره. چون كاراكتر ها به اصطلاح URL ENCODE ميشن. اگر تو فايل مقصد ازشون استفاده كني مشكلي پيش نمياد . يعني مرورگر هاي پيشرفته خودشون اينارو DECODE ميكنن. اگر نكردن با url_decode ميتوني اصلاح كني.

ولي اينطوري درستشه.
 

iranii

Registered User
تاریخ عضویت
1 جولای 2005
نوشته‌ها
512
لایک‌ها
30
خوب فقط موردی که هست الان هیچ نتیجه ای رو در برنمیگیره و الا موردی نیست از این نظر.
مثلا من یک فیلد تاتیل دارم که یکی از محتواهاش "سلام" هست وقتی که
به کوئری میگم برو جایی رو انتخاب کن که سلام هست کاری انجام نمیشه
حالا کافی هست همین سلام به یه کلمه انگلیسی مثل Hello تغییر پیدا کنه
تا انتخاب کنه و خروجی داده بشه.

از تابع urldecode هم استفاده کردم باز هم نشد.
 

sama_sally

Registered User
تاریخ عضویت
5 آپریل 2005
نوشته‌ها
2,598
لایک‌ها
1
سن
35
محل سکونت
Essen, Deutschland
من كه نفهميمدم چي گفتي!‌ سواتم ضنگ ظده! يه ريزه واضح تر بگو ميخواي چي كار كني.
 

firebird

Registered User
تاریخ عضویت
2 جولای 2005
نوشته‌ها
1,424
لایک‌ها
10
سن
46
اگه query رو اینجا میذاشتی بهتر میشد علت مشکل رو فهمید منتهی راه حل احتمالاً اینه که به جای [...]GET_$ از
کد:
urldecode($_GET[...])
استفاده کنی.
 

sama_sally

Registered User
تاریخ عضویت
5 آپریل 2005
نوشته‌ها
2,598
لایک‌ها
1
سن
35
محل سکونت
Essen, Deutschland
اگه query رو اینجا میذاشتی بهتر میشد علت مشکل رو فهمید منتهی راه حل احتمالاً اینه که به جای [...]GET_$ از
کد:
urldecode($_GET[...])
استفاده کنی.
فك كنم منم همينو گفتم كه گفت نشد!
 
بالا