رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

پست های پیشنهاد شده

سلام به اساتید یه سوال داشتم

من میخوام برای برنامه ی اندرویدی که نوشتم در شروع یک اکتیویتی لاگین بسازم و یوزرهایی که از قبل در پایگاه داده گذاشتم بتونن وارد بشن و من بتونم بفهمم کیا وارد شدن.

اگر کسی میتونه کمک کنه یا سورسی داره که این کار را میکنه لطفا کمک کنه.

ممنون 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

 

مورد اول)وقتی قصد دارید بدونید چه کسانی لاگین کرده اند باید یک وب سرویس ایجاد کنید تا اطلاعات را بتوانید  در سمت سرور ببینید.

مورد دوم)آیا کاربرانی که لاگین میکنند در سرور قرار گرفته اند یا دیتابیس sqlite اندروید(یعنی تعداد کاربران محدود و مشخص میباش)

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من تونستم لاگین بسازم که توسط یوزرهایی که در دیتابیس آنلاین توسط خودم تعریف شده لاگین بشم.

حالا میخوام یجوری بدونم کدوم یوزرها حداقل یکبار وارد شدن.

میشه یه ستون در دیتابیس اضافه کنم و هر یوزر که وارد میشه مقدار اون ستونش 1 بشه؟

اگر میشه چجوری اینکار رو بکنم.

چجوری میتونم یه فیلد (رمز) را از داخل برنامه ویرایش کنم؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 42 دقیقه قبل، Bafq Bafqcity گفته است :

من تونستم لاگین بسازم که توسط یوزرهایی که در دیتابیس آنلاین توسط خودم تعریف شده لاگین بشم.

حالا میخوام یجوری بدونم کدوم یوزرها حداقل یکبار وارد شدن.

میشه یه ستون در دیتابیس اضافه کنم و هر یوزر که وارد میشه مقدار اون ستونش 1 بشه؟

اگر میشه چجوری اینکار رو بکنم.

چجوری میتونم یه فیلد (رمز) را از داخل برنامه ویرایش کنم؟

 

سوالتون کلیه و باید کدهای زیادی براش نوشت

 

1-اگر میخواید یکاری کنید که هرکاربر یبار لاگین کنند بهتره روی sharedPrefrences اونو پیاده سازی کنید و وقتی مقدار فیلد 1 شد وارد شود غیر اینصورت صفحه لاگین باز شود

 

2- برای ویرایش رمز هم براحتی با دستور زید میتوانید اطلاعات را ویرایش کنید:

SqliteDatabase db=this.getWritable();

db.update("Table","id="+1,null);

id اسم فیلدتون و 1 هم شماره هر کاربر

 

 

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من الان یه تیبل users در دیتابیس روی هاستم ساختم که سه تا فیلد داره: email - password - check

حالا میخوام وقتی یه کاربر لاگین میکنه فیلد check مربوط به همون کاربر که مقدار اولی اش صفر هست به یک تغییر کنه تا بفهمم این کاربر از یوزرش استفاده کرده و حداقل یبار وارد شده.

کاربر وقتی ایمیل و رمزشو درست میزنه اکتیویتی فینیش میشه و میره اکتیویتی بعدی.آیا باید همینجایی که اکتیویتی فینیش میشه دستور آپدیت فیلد check به عدد یک را بدم.

اگر درسته کد آپدیتش رو لطف کنید.

اون کدی هم که برای یکبار ورود هست و دیگه اکتیویتی لاگین را بعد از یکبار لاگین دیگه نشون نمیده را بزارید.

بازم ممنون

لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

برای همین به این فکر افتادم تا برای این 100 نفر یه یوزرنیم پسورد تعریف کنم و بدم بهشون تا فقط اونا بتونن از این برنامه استفاده کنن که تا اینجاش مشکلی نیست اما من هیچ کنترلی روی این یوزر ها ندارم و نمیتونم بفهمم کیا دارن از این برنامه استفاده میکنن.

اگر پیشنهاد بهتری دارید تا این امکانات برایم فراهم بشه مشتاقم بشنوم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در در 12/30/2016 در 02:59، Bafq Bafqcity گفته است :

من الان یه تیبل users در دیتابیس روی هاستم ساختم که سه تا فیلد داره: email - password - check

حالا میخوام وقتی یه کاربر لاگین میکنه فیلد check مربوط به همون کاربر که مقدار اولی اش صفر هست به یک تغییر کنه تا بفهمم این کاربر از یوزرش استفاده کرده و حداقل یبار وارد شده.

کاربر وقتی ایمیل و رمزشو درست میزنه اکتیویتی فینیش میشه و میره اکتیویتی بعدی.آیا باید همینجایی که اکتیویتی فینیش میشه دستور آپدیت فیلد check به عدد یک را بدم.

اگر درسته کد آپدیتش رو لطف کنید.

اون کدی هم که برای یکبار ورود هست و دیگه اکتیویتی لاگین را بعد از یکبار لاگین دیگه نشون نمیده را بزارید.

بازم ممنون

 

 

برای اینکار باید یک وب سرویس با php بنویسید که اینکار رو انجام بده

اما خود وردپرس یک پلاگین داره که وب سرویس رو خودش تولید میکنه.شاید نیازی به نوشتن توسط خودتون نداشته باشه و بیشتر کارهارو رو میتونه انجام بده

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 8 ساعت قبل، Farzad Sarseifi گفته است :

 

 

برای اینکار باید یک وب سرویس با php بنویسید که اینکار رو انجام بده

اما خود وردپرس یک پلاگین داره که وب سرویس رو خودش تولید میکنه.شاید نیازی به نوشتن توسط خودتون نداشته باشه و بیشتر کارهارو رو میتونه انجام بده

 

در مورد وردپرس میتونید کمکی بکنید تا فقط یه اکتیویتی از لاگین وردپرس را داشته باشم و در صورت صحیح بودن یوزر و پسورد بره اکتیویتی بعدی یا یه اکتیویتی خاص ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در در 12/31/2016 در 17:14، Bafq Bafqcity گفته است :

در مورد وردپرس میتونید کمکی بکنید تا فقط یه اکتیویتی از لاگین وردپرس را داشته باشم و در صورت صحیح بودن یوزر و پسورد بره اکتیویتی بعدی یا یه اکتیویتی خاص ؟

شما باید وب سرویس شو ایجاد کنید روی وردپرس.

https://wordpress.org/support/topic/web-service-without-plugin/
http://mikeschinkel.com/blog/restful-web-services-in-wordpress-plugin/

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

  • مطالب مشابه

    • توسط hami develop
      سلام خدمت دوستان عزیز.
      من یک اپلیکیشن اندروید درست کردم و از کلاس service ارث بری کردم و هر دقیقه یک بار یک وب سایت را چک میکند و در صورتی که اطلاعات جدیدی در این وب سایت وجود داشته باشد به من یک نوتیفیکیشن میدهد.
      آیا بهتر است که از کلاس Worker ارث بری کنم تا برنامه وظایفی را انجام دهد؟
      نکته: در واقع می‌خواهم برنامه برای مدت طولانی اجرا شود و هیچ گاه متوقف نشود.
      اگر کسی از دوستان تجربه کار با Worker را دارد لطفا بفرمایند که اختلاف
      Worker 
      و
      Service 
      دقیقا چی هست و برای برنامه ای که همیشه در بک گراند در حال اجرا است، کدامیک بهتر است؟
      سپاس بی کران.
    • توسط AliAmani
      سلام.وقت بخیر.من به یه ارور بر خوردم. دیباگر attach نمیشه.لطفا راهنماییم کنید.
      اندروید استودیو را حذف و دوباره نصب کردم.avd جدید ایجاد کردم.adb را kill و بعد start کردم.اما درست نشد.
      مشکل فقط در پروژه های اندروید است و در پروژه های فلاتر مشکلی نیست.
      debug.pdf
    • توسط aliazmoodeh
      سلام من یه آپی دارم یه قسمت وجود داره که اطلاعات رو از سرور میگیره و تو ریسایکلرویو نمایش میده من میخوام این اطلاعات رو تو حالت افلاین هم داشته باشم یعنی چی یعنی بتونم اطلاعاتی که از سرور گرفتم قبلا رو وقتی کاربر اینترنت بهش نمایش بدم دقیقن مثله تلگرام میگم ولی نمیدونم باید چیکار کنم اگر اموزشی در این رابط دارید بهم بگید یا سورسی دارید بهم بگید پولی یا رایگان باشه برام فرقی نمیکنه فقط میخوام مشکلمو حل کنه
    • توسط Zeynab Tri
      سلام. دوستان بنده یک عدد تازه کار در برنامه نویسی اندروید هستم و نمیدونم این ارور رو چطور حل کنم. ممنون میشم اگر کسی میتونه من رو راهنمایی کنه.عکسش رو گذاشتم.

    • توسط moein123
      سلام دوستان خوبین؟
      من برای آپ خودم ثبتنام و لاگین دارم میسازم
      ثبتنام کاربر به خوبی کار میکنه و مشکلی نداره
      ولی برای لاگین کردن نمیدونم چرا کار نمیکنه
      پیغام خطا هم نمیده
      ببینین این کد سمت سروری که نوشتم
      <?php if($_SERVER['REQUEST_METHOD']=='POST'){ $mail2=$_POST['mail']; $password=$_POST['pass']; require_once 'connect.php'; $sql = "SELECT * FROM register WHERE mail='$mail2' "; $response=mysqli_query($conn,$sql); $result=array(); $result['login']=array(); if(mysqli_num_rows($response)===1){ $row=mysqli_fetch_assoc($response); if(password_verify($password,$row['pass'])){ $index['name']=$row['name']; $index['mail']=$row['mail']; array_push($result['login'],$index); $result['okk']='1'; $result['message']='okk'; echo json_encode($result); mysqli_close($conn); }else{ $result['okk']='0'; $result['message']='error'; echo json_encode($result); mysqli_close($conn); } } } ?> و اینم کد های جاوای اندروید که نوشتم
      package com.android.register1; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.print.PageRange; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.Toast; import com.android.volley.AuthFailureError; import com.android.volley.Request; import com.android.volley.RequestQueue; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.StringRequest; import com.android.volley.toolbox.Volley; import com.google.android.material.snackbar.Snackbar; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import java.util.HashMap; import java.util.Map; public class loginn extends AppCompatActivity { EditText edt_username,edt_password_login; Button btn_login; ProgressBar my_progcess; static String url_login="http://192.168.1.103/register2/login.php"; LinearLayout my_manager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_loginn); find_all(); } private void find_all() { edt_username=findViewById(R.id.edt_username); edt_password_login=findViewById(R.id.edt_pass_login); my_progcess=findViewById(R.id.my_progcess_login); btn_login=findViewById(R.id.btn_login); my_manager=findViewById(R.id.my_manager); btn_login.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String musername=edt_username.getText().toString().trim(); String mpassword=edt_password_login.getText().toString().trim(); if(!musername.isEmpty() || !mpassword.isEmpty()){ my_login(musername,mpassword); }else { edt_username.setError("username"); edt_password_login.setError("password"); } } }); } public void my_login(final String mail,final String pass){ my_progcess.setVisibility(View.VISIBLE); btn_login.setVisibility(View.GONE); StringRequest request=new StringRequest(Request.Method.POST, url_login, new Response.Listener<String>() { @Override public void onResponse(String response) { try { JSONObject jsonObject=new JSONObject(response); String message=jsonObject.getString("okk"); JSONArray jsonArray=jsonObject.getJSONArray("login"); if(message.equals("1")){ for (int i = 0; i <jsonArray.length() ; i++) { JSONObject jsonObject1=jsonArray.getJSONObject(i); String name=jsonObject1.getString("name").trim(); String mail=jsonObject1.getString("mail").trim(); Snackbar snackbar=Snackbar.make(my_manager, name+mail+"لاگین شدید",Snackbar.LENGTH_LONG); snackbar.getView().setTranslationY(-100); snackbar.show(); } } } catch (JSONException e) { e.printStackTrace(); Toast.makeText(loginn.this, "error1"+e.toString(), Toast.LENGTH_SHORT).show(); my_progcess.setVisibility(View.GONE); btn_login.setVisibility(View.VISIBLE); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Toast.makeText(loginn.this, "error2"+error.toString(), Toast.LENGTH_SHORT).show(); my_progcess.setVisibility(View.GONE); btn_login.setVisibility(View.VISIBLE); } }){ @Override protected Map<String, String> getParams() throws AuthFailureError { Map<String,String>params=new HashMap<>(); params.put("mail",mail); params.put("pass",pass); return params; } }; RequestQueue requestQueue= Volley.newRequestQueue(this); requestQueue.add(request); } } ممنون میشم کمکم کنید 
  • فایل

×
×
  • اضافه کردن...