uygulamadan önce .. Ben öğretici izledi Bu kayıt ve girişte iyi çalışır ancak filtreleme veya doğrulama yapılmaz. Sad Eğer eskimiş değilse veya kütüphaneler kaldırılmış olması iyi bir öğretici için beni daha iyi bir sayfanın bağlantısını verirsen çok takdir edecektir .. ben tam her fonksiyon/metot çalıştıran nasıl adımları anlamak mümkün değildi, demek. Android 1.5 kullanıyorum.giriş formu doğrulama yöntemi giriş
İşte
public class Main extends AppCompatActivity implements View.OnClickListener {
EditText name, password;
String Name, Password;
Context ctx=this;
String NAME=null, PASSWORD=null, EMAIL=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
name = (EditText) findViewById(R.id.main_name);
password = (EditText) findViewById(R.id.main_password);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
public void main_register(View v){
startActivity(new Intent(this,Register.class));
}
public void main_login(View v){
Name = name.getText().toString();
Password = password.getText().toString();
BackGround b = new BackGround();
b.execute(Name, Password);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.main_login:
break;
}
}
class BackGround extends AsyncTask<String, String, String> {
@Override
protected String doInBackground(String... params) {
String name = params[0];
String password = params[1];
String data="";
int tmp;
try {
URL url = new URL("http://10.0.2.2/BirdBreedingManagement/scripts/login.php");
String urlParams = "name="+name+"&password="+password;
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setDoOutput(true);
OutputStream os = httpURLConnection.getOutputStream();
os.write(urlParams.getBytes());
os.flush();
os.close();
InputStream is = httpURLConnection.getInputStream();
while((tmp=is.read())!=-1){
data+= (char)tmp;
}
is.close();
httpURLConnection.disconnect();
return data;
} catch (MalformedURLException e) {
e.printStackTrace();
return "Exception: "+e.getMessage();
} catch (IOException e) {
e.printStackTrace();
return "Exception: "+e.getMessage();
}
}
@Override
protected void onPostExecute(String s) {
String err=null;
try {
JSONObject root = new JSONObject(s);
JSONObject user_data = root.getJSONObject("user_data");
NAME = user_data.getString("name");
PASSWORD = user_data.getString("password");
EMAIL = user_data.getString("email");
} catch (JSONException e) {
e.printStackTrace();
err = "Exception: "+e.getMessage();
}
Intent i = new Intent(ctx, Home.class);
i.putExtra("name", NAME);
i.putExtra("password", PASSWORD);
i.putExtra("email", EMAIL);
i.putExtra("err", err);
startActivity(i);
}
}
yılında günlüğü kolları benim Main.java ait koddur .. Burada google ve konuları arama oldum ama android bir newbie tarafından anlaşılabilir bir çözüm bulamadık
Ve burada php script try {önceden
//$username = "jeel";
//$pssword = "23456";
$username = filter_input(INPUT_POST, 'name');
$pssword = filter_input(INPUT_POST, 'password');
if($username == ""){
$results = "Invalid Entry";
echo json_encode(array("user_data"=>$results));
}else{
$stmt = $db->prepare('SELECT * '
. 'FROM users1 '
. 'WHERE name = :uname AND password = :password ');
$stmt->bindParam(':uname', $username);
$stmt->bindParam(':password', $pssword);
$stmt->execute();
$results = $stmt->fetch(PDO::FETCH_ASSOC);
if($results > 0){
$response = array();
echo json_encode(array("user_data"=>$results));
} else{
$results = "No Record Found";
echo json_encode(array("user_data"=>$results));
}
}
}catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
teşekkürler olduğunu.
ben bu satırı work..Toast.makeText (getActivity() yapmak mümkün değildi "Kullanıcı Adı veya Şifre boş" olarak Sana kod değiştirilmiş .. Bu benim sorunu çözmek için bana yol .., Tost teşekkürler .LENGTH_LONG) .show(); ve aktiviteyi durdurmada bazı ayarlamalar. hat 'Toast.makeText içinde – fernan
(getActivity(), "adı veya şifre boş" Toast.LENGTH_LONG) .show(); 'ilk parametre' bağlamı 'Toast'a iletmek için kullanılır. Eğer aracılığıyla 'context' gönderebilir' this', 'getActivity()' ve 'getApplicationContext()' cevabım gerçekten sana yardım beri benim cevap vote' 'Eğer o ealier –
, sevinirim söz değil için üzgünüm' Cevap ver veya cevabımı doğru olarak kabul et. Şu anda bu sitedeki herhangi bir soruyu yayınlayamadığım için şu anki itibarımın maksimum soru limitine ulaştığımdan dolayı, geri adım atmak için saygınlığımı arttırmak için biraz acelem var :) –