بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
مشکل با سرچ در برنامه(حل شد )
با سلام و عرض خسته نباشید خدمت همه دوستان عزیز
یک مشکل عجیبی بهش خوردم اونم اینه ک من سرچ در برنامه گذاشتم
و این سرچ کردن قراره ی سری اطلاعاتو در recyclerView نشون بده و سرچم بر اساس nameتنظیم شده
حالا برنامه برای سرچ انگلیسی جواب میده ینی اگر اسم اون فیلد انگلیسی باشه سرچ کنیم میاره
ولی درصورتی ک فارسی باشه بر نمیگردونه به هیچ وجه
نمیدونم مشکل از چیه ممنون میشم راهنمایی کنید در ضمن از کتابخانه والی استفاده میکنم و کد هایی ک استفاده کردم اینه
و چیز دگ ای هم ک هست برای سرچ انگلیسی اگر باقی اطلاعات دریافتی بجز اسم فارسی باشه هم برمیگردونه و فقط با واژه فارسی مشکل داره
<?php
$con=mysqli_connect("localhost","user","pass","DB");
mysqli_set_charset($con,"utf8");
$s = $_REQUEST["search"];
$sql = "SELECT * FROM ghaza WHERE (name LIKE N'%$s%')";
$res = mysqli_query($con,$sql);
$result = array();
while ($row = mysqli_fetch_array($res)) {
$item = array();
$item['success']="1";
$item['id'] = $row[0];
$item['name'] = $row[1];
$item['price'] = $row[2];
$item['comment'] = $row[3];
$item['img'] = $row[4];
$item['iddaste'] = $row[5];
$item['takhfif'] = $row[6];
$result[] = $item;
}
echo json_encode($result, JSON_UNESCAPED_UNICODE);
mysqli_close($con);
?>
درخواست سرچ
public class SearchRequest extends StringRequest {
private static final String Search_REQUEST_URL = "test";
private Map<String,String> params;
public SearchRequest(String searchtxt , Response.Listener<String> listener) {
super(Method.POST, Search_REQUEST_URL, listener, null);
params = new HashMap<>();
params.put("search", searchtxt);
}
@Override
public Map<String, String> getParams() {
return params;
}
}
کلاس دریافت داده
public void getData(String s,final onGetData onGetData) {
MainActivity.showDialog();
String url = " test.php?search=" + s;
final JsonArrayRequest request = new JsonArrayRequest(Request.Method.GET, url,
null, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.d(TAG, "onResponse: " + response.toString());
List<NewsFeed> feeds = new ArrayList<>();
for (int i = 0; i < response.length(); i++) {
NewsFeed feed = new NewsFeed();
try {
JSONObject object = response.getJSONObject(i);
feed.setImgUrl(object.getString("img"));
feed.setFeedName(object.getString("name"));
feed.setComment(object.getString("comment"));
feed.setPrice(object.getInt("price"));
feed.setTakhfif(object.getInt("takhfif"));
feed.setId(object.getInt("id"));
Log.e("res",object.getString("name")+"*"+object.getString("comment"));
feeds.add(feed);
} catch (JSONException e) {
e.printStackTrace();
}
}
onGetData.onGet(feeds);
MainActivity.hideDialog();
}
0
0
مشکل شما دقیقا در کوئری هست که استفاده می کنید در نت سرچ کنید راهکارش هست (8 سال پیش)
0
0
کوئری چی؟
سرچا هیچ کدوم به جواب نرسیده متاسفانه
همشون برای رتروفیت گفتن ک متاسفانه باز متوجه نشدم
میتونین بیشتر راهنمایی کنید؟
من فک کردم به خاطر نحوه گرفتن و ارسال اطلاعاتم getهست میخاستم از post استفاده کنم ک اونم متوجه نشدم باز
چجوری این متن سرچ رو با پست بفرستم و توی برنامم ک اطلاعاتو با getمیگیرم استفاده کنم (8 سال پیش)
0
0
searchtxt = edt_search.getText().toString();
final String encodedurl = URLEncoder.encode(searchtxt, "UTF-8");
من از این کد هم در برنامه استفاده میکنم ولی بازم جواب نمیده
و اینکه روی 2 تا گوشی جواب داده سرچ فارسی گوشی سامسونگ j5و ال جی جی4
ولی روی گوشی مثلا htc و سونی و اینا جواب نداده
این رو نمیدونم چجوری حل کنم
(8 سال پیش)
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .