بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

ثبت نشدن مقادیر در دیتابیس (کار با رتروفیت)

مدیریت گفتگو
SeyyedH 9 سال پیش
آخرین تغییر: 9 سال پیش

سلام دوستان

بااستفاده از کدهای زیر قصد دارم در سمت سرور رکوردی رو به دیتابیسم اضافه کنم اما موفق نمیشم. البته رکورد جدید ایجاد میشه اما با فیلد های خالی

کد 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 سال پیش

 پاسخ صحیح

بنده همش دنبال اشکال کار در سمت اندروید بودم اما مشکل در سمت سرور بوجود امده بود با تغییر متد get به post مشکل حل شد

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .