بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
ثبت نشدن مقادیر در دیتابیس (کار با رتروفیت)
سلام دوستان
بااستفاده از کدهای زیر قصد دارم در سمت سرور رکوردی رو به دیتابیسم اضافه کنم اما موفق نمیشم. البته رکورد جدید ایجاد میشه اما با فیلد های خالی
کد api service
public interface APIService {
@FormUrlEncoded
@POST("insert.php")
Call<ResponseBody> insert(@Field("name")String name, @Field("last_name")String lastName);
}
کد اصلی:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Retrofit retrofit=new Retrofit.Builder().baseUrl("http://10.0.2.2/note-server/")
.addConverterFactory(GsonConverterFactory.create())
.build();
APIService apiService = retrofit.create(APIService.class);
Call<ResponseBody> call = apiService.insert("hello","android");
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
Log.i("TAG","call is " + call);
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Log.i("TAG","ERRoR : " + t.getLocalizedMessage());
}
});
}
}
کد php:
<?php
$connection = mysqli_connect("localhost","root","","note_db");
if (mysqli_connect_errno()){
echo "Connection Failed" . mysqli_connect_error();
}
$name = $_GET['name'];
$last_name = $_GET['last_name'];
$result = mysqli_query($connection,"INSERT INTO task VALUES (0,'$name','$last_name')");
if ($result){
echo $name . $last_name;
}
mysqli_close($connection);
برنامه هیچ خطا یا کرشی هم نداره اما واقعا گیج شدم که ایراد کار از کجا هست
برای این سوال 1 پاسخ وجود دارد.
مشاهده پاسخ صحیح
پاسخ به سوال
SeyyedH
9 سال پیش
+1
0
پاسخ صحیح
بنده همش دنبال اشکال کار در سمت اندروید بودم اما مشکل در سمت سرور بوجود امده بود با تغییر متد get به post مشکل حل شد
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .