درخواست درباره دیتابیس انلاین

سوال

به نام خدا

سلام دوستان

من یه برنامه نوشتم که می خوام یوزر پس اولیه رو من بدم به کاربر و اون نهایتا بتونه رمزو طبق میل خودش عوض کنه اما دسترسی از منوط به یوزری باشه که من میدم

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

ممنون میشم کسی اگر وقت داره کمکم کنه

این اکتیویتی main من هست

Sub Globals

Private text_user As EditText
Private text_pass As EditText
Private btn_register As Button
Dim ht As HttpJob

End Sub

Sub Activity_Create(FirstTime As Boolean)

Activity.LoadLayout("lmain")
ht.Initialize("sing",Me)

End Sub

Sub btn_register_Click

Dim go As String
go="username="&text_user&"&password="&text_pass
ht.PostString("http://185.27.134.9/index.php","name="&text_user.Text&"&pass="&text_pass.Text)
ProgressDialogShow("لطفا صبر کنید ...")
ProgressDialogHide

End Sub

Sub jobdone (job As HttpJob)
If job.Success=True Then
If job.JobName="sing" Then
Msgbox(job.GetString,"خوش آمدید")
' StartActivity("lhome")
End If
Else
ToastMessageShow("خطا در برقراری ارتباط",False)
End If

End Sub

اینم کدهای رجیستری منه که در هاست گیگفا بارگذاری کردم

$con = mysql_connect('localhost','gigfa_22473779_misaqinstitute','pass')

$user=$_post['username'];
$pass=$_post['password'];

if ($con){
mysql_select_db('gigfa_22473779_misaqinstitute',$con);
mysql_set_charset('utf8');

$q="insert into users(username,password) VALUES('$user','$pass')";

if (mysql_query($q)){
echo "done";

}else{echo "error"};

}

جدول سه ستون داره. ای دی – یوزر – پسورد

 

در حال بررسی 0
2018-09-28T23:11:44+03:30 6 پاسخ کاربر 0

پاسخ ها ( 6 )

    0
    2018-09-29T14:16:18+03:30

    سلام

    درست متوجه شدم، شما میخواین برای هر کاربر یک نام کاربری و رمز عبور پیشفرض انتخاب کنید و بعد از نام کابری و رمز عبور رو به کاربر بدید و کاربر بتونه رمزش رو عوض کنه؟
    اگر اینطوری میخواید باشه باید بر اساس id کار کنید و از کوئری update استفاده کنید

      0
      2018-10-01T21:04:42+03:30
      این پاسخ ویرایش شد.

      سلام
      شب بخیر
      ممنونم که جواب دادید
      اما چون تازه کار هستم متوجه نشدم دقیق باید چکار کنم
      شما منظور منو درست متوجه شدید
      تا الان هر چی اموزش دیدم منظورم تامین نشده

    0
    2018-10-01T21:08:02+03:30

    ضمنا من در این قسمت
    Sub jobdone (job As HttpJob)
    If job.Success=True Then
    If job.JobName=“sing” Then
    Msgbox(job.GetString,“خوش آمدید”)
    ‘ StartActivity(“lhome”)

    نوشتم اکتیویتی هوم بعد از صحت ایف باز بشه و وقتی شد فکرکردم موفق شدم اما وقتی بدون وارد کردن ای دی و رمز روی باتوم کلیک کردم دیدم بازم هوم رو باز کرد و وابسته به یوزر و رمز نبود
    به نظرتون مشکل از کجاست؟

    0
    2018-10-02T16:37:48+03:30

    ببینید دوست عزیز

    الان مرحله اول برنامه شما آمادست(یعنی کاربر رو در دیتابیس به صورت دستی اضافه میکنید و یوزر و پس رو به برنامه میدید و وارد برنامه میشه).

    حالا میرسیم به مرحله دوم برنامه که کاربر بتونه رمزش رو عوض کنه، برای تغییر رمز باید از کوئری update استفاده کنید، و برای اینکه کاربر بتونه رمز رو عوض کنه، باید شرط به شکل زیر باشه:

    $q = "update tbl_name set password=$password where user=$user";

    در کوئری بالا گفتیم که آپدیت کن جدول(به جای tbl_name نام جدولتون رو بنویسید) که فیلد password برابر باشه با مقداری که کاربر وارد میکنه، به شرطی که(where) فیلد user مساوی باشه با نام کاربری.

    که کدهای زیر میشه، کدهای صفحه تغییر رمز عبور که باید در هاست آپلود کنید، سپس در b4a طبق آموزش ها باهاش ارتباط برقرار و مقادیر رو پاس بدید.

    $con = mysql_connect('localhost','gigfa_22473779_misaqinstitute','pass')
    
    $user=$_post['username'];
    $pass=$_post['password'];
    
    if ($con){
    mysql_select_db('gigfa_22473779_misaqinstitute',$con);
    mysql_set_charset('utf8');
    
    $q = "update tbl_name set password=$password where user=$user";
    
    if (mysql_query($q,$con)){
    echo "done";
    
    }else{echo "error"};
    
    }

    و در رابطه با اینکه اگر رمز عبور درست بود، اکتیویتی lhome رو نمایش بده، شما دستور if که نوشتید مشکل داره!

    ساختار دستور If ساده به صورت زیر است:

    if condition then
    Statement
    end if
    

    حالا ساختار دستور if تو در تو(که شما اشتباه نوشتید)، به صورت زیر می باشد:

    if condition then
         Statement
    Else if condition then
        Statement
    Else if condition then
    Else
         Statement
    end if
    
    =======
    Example:
    If EditText1.Text = "site" Then
        Msgbox("beporsam.ir","")
    else if EditText1.Text = "email" Then
        Msgbox("beporsam@gmail.com","")
    Else
        Msgbox("www.beporsam.ir","")
    End If

    دستور if تو در تویی که نوشتید رو با ساختار بالا مقایسه کنید، متوجه خواهید شد.

    موفق باشید.

    0
    2018-10-02T16:47:51+03:30

    سلام بزرگوار
    یک دنیا ممنونم که برام وقت گذاشتید
    خیر دنیا و اخرت ببینی انشالله
    چشم این دستوراتی که نوشتید رو اجرا میکنم
    امید به خدا که حل بشه
    بازم ممنونم
    لطف کردید

      0
      2018-10-02T19:08:37+03:30

      ببخشید می دونید برای چی این ارور موقع اجرای برنامه داده میشه؟

       

      B4A Version: 8.00
      Parsing code. (0.00s)
      Compiling code. (0.07s)
      Compiling layouts code. (0.00s)
      Organizing libraries. (0.00s)
      Generating R file. (0.06s)
      Compiling generated Java code. Error
      B4A line: 25
      Msgbox(\
      javac 1.8.0_112-release
      src\b4a\example\lhome.java:373: error: cannot find symbol
      anywheresoftware.b4a.keywords.Common.Msgbox(BA.ObjectToCharSequence(“??? ????? ???? ?????”),BA.ObjectToCharSequence(“”),mostCurrent.activityBA);
      ^
      symbol: method ObjectToCharSequence(String)
      location: class BA

    0
    2018-10-02T22:53:11+03:30

    برای مورد اخر بیسیک رو پاک کردم و از اول ریختم درست شد

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

    0
    2018-10-02T23:35:40+03:30

    اساسا برنامه من از دیتابیس یوزر پس نمی گیره که در صورت عدم تایید برنامه رو باز نکنه

     

ارسال یک پاسخ