2016-09-01 2 views
0

Я работаю над приложением, которое требует входа в систему и регистрации, используя библиотеку залпонов.Как подключить приложение Android к локальному серверу с помощью volley api

Тестирование приложения Я введенный свои полномочия и подписался, но не отправляли мои данные на мой локальный сервер, и я получаю сообщение тоста в прикладном «com.android.volley.servererror»

Вот мой volleyRegister.php файл:

<?php 

if($_SERVER['REQUEST_METHOD']=='POST'){ 
$fullname = $_POST['fullname']; 
$email = $_POST['email']; 
$username = $_POST['username']; 
$password = $_POST['password']; 
require_once('dbConnect.php'); 
$sql = "INSERT INTO android-volley (fullname,email,username,password) VALUES ('$fullname','$email','$username','$password')"; 
if(mysqli_query($con,$sql)){ 
    echo "Successfully Registered"; 
}else{ 
echo "Could not register"; 
}}else{ 
echo 'error';}?> 

код Android

public class SignUpFragment extends Fragment implements Button.OnClickListener { 


public static final String Register_URL ="http://192.168.0.107/android-connect/volleyRegister.php"; 



public static final String KEY_FULLNAME = "fullname"; 
public static final String KEY_EMAIL = "email"; 
public static final String KEY_USERNAME = "username"; 
public static final String KEY_PASSWORD = "password"; 



EditText etFullName; 
EditText etEmail; 
EditText etUsername; 
EditText etPassword; 
Button SignUp2; 


@Override 
public View onCreateView(final LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.fragment_signup, container, false); 

    final Animation animAlpha = AnimationUtils.loadAnimation(getActivity(), R.anim.anim_alpha); 

    etFullName = (EditText) rootView.findViewById(R.id.etFullName); 
    etEmail = (EditText) rootView.findViewById(R.id.etEmail); 
    etUsername = (EditText) rootView.findViewById(R.id.etUsername); 
    etPassword = (EditText) rootView.findViewById(R.id.etPassword); 
    Button SignUp2 = (Button) rootView.findViewById(R.id.Signup2); 


    SignUp2.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      final String fullName = etFullName.getText().toString(); 
      final String email = etEmail.getText().toString(); 
      final String username = etUsername.getText().toString(); 
      final String password = etPassword.getText().toString().trim(); 

      AnimationSet sets = new AnimationSet(false); 
      sets.addAnimation(animAlpha); 
      v.startAnimation(sets); 

      if (etFullName.length() == 0 || etEmail.length() == 0 || etUsername.length() == 0 || etPassword.length() == 0) { 
       Toast.makeText(getActivity(), "Oops! fill in complete details", Toast.LENGTH_SHORT).show(); 


      } else { 
       StringRequest stringRequest = new StringRequest(Request.Method.POST, Register_URL, 
         new Response.Listener<String>() { 
          @Override 
          public void onResponse(String s) { 
           Toast.makeText(SignUpFragment.this.getActivity(), s, Toast.LENGTH_LONG).show(); 
          } 
         }, 
         new Response.ErrorListener() { 
          @Override 
          public void onErrorResponse(VolleyError volleyError) { 
           Toast.makeText(SignUpFragment.this.getActivity(), volleyError.toString(), Toast.LENGTH_LONG).show(); 
          } 


         }) { 
        @Override 
        protected Map<String, String> getParams() { 
         Map<String, String> params = new HashMap<>(); 
         params.put(KEY_FULLNAME, fullName); 
         params.put(KEY_EMAIL, email); 
         params.put(KEY_USERNAME, username); 
         params.put(KEY_PASSWORD, password); 
         return params; 
        } 


       }; 
       RequestQueue requestQueue = Volley.newRequestQueue(getActivity()); 
       requestQueue.add(stringRequest); 
      } 
     }}); 

    return rootView; 
} 

`

+0

Пожалуйста, добавьте ваш Android-код – Stefan

+0

, пожалуйста, напишите свой андроид код –

+0

Знаете ли вы о Google Firebase.It предлагает аутентификацию и базу данных в реальном времени .check после https: // firebase .google.com/docs/android/setup. Я назначаю firebase из-за этого, его функции могут быть полезны для вашего приложения –

ответ

3

открыт CMD и тип IPCONFIG в вашей PHP системе (ПК или lappy)

скопировать ваш IP-адрес

и использовать его как

// Тест IP 192.168.0.1

private void callvolly() { 
    String url = "http://192.168.0.1/thenyourfolderpath"; 
    StringRequest stringRequest = new StringRequest(Request.Method.POST, url, 
      new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 


        //responce 

       } 
      }, 
      new Response.ErrorListener() { 
       @Override 
       public void onErrorResponse(VolleyError error) { 


       } 
      }) { 
     @Override 
     protected Map<String, String> getParams() { 
      Map<String, String> params = new HashMap<String, String>(); 
      params.put("", "");//params 
      Log.e("send", params.toString()); 
      return params; 
     } 

    }; 
    stringRequest.setRetryPolicy(new DefaultRetryPolicy(
      20000, 
      DefaultRetryPolicy.DEFAULT_MAX_RETRIES, 
      DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)); 
    RequestQueue requestQueue = Volley.newRequestQueue(this); 
    requestQueue.add(stringRequest); 

} 
Смежные вопросы