نمایش نتایج 1 تا 8 از 8

نام تاپیک: مشکل در ارتباط با پایگاه داده(کمک)

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1393
    محل زندگی
    اصفهان
    پست
    67

    Question مشکل در ارتباط با پایگاه داده(کمک)

    عرض سلام و خسته نباشید...
    من می خوام با کد زیر یه صفحه لاگین بسازم ...
    اما کد زیر دوتا ارور می ده هرچقدر هم فکر کردم به جایی راه نبردم..
    ممنون می شم بگید کجای کد را دستکاری کنم تا مشکل برطرف شه:کد:



    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Login page!</title>

    </head>
    <body>

    <form action="login.php" method="post" >
    Username:<input name="user" type="text" ><br><br>
    Password:<input type="text" name="password"><br>
    <input type="submit" name="login_btn" value="Login!"></form>


    <?php
    if(isset($_POST['login_btn']))
    {
    $user_name=$_POST["user"];
    $password=$_POST['password'];
    $conn=mysqli_connect("localhost","mojtaba", "9addsfsf93gfh6","mojidb");
    $query="SELECT password FROM users WHERE username=$user_name";

    $result=mysqli_query($conn,$query);
    $result2=mysqli_fetch_assoc($result);

    if(mysqli_num_rows($result)==1)
    {
    //check password
    if(md5($password)==$result2['password'])
    {
    //logined OK!
    echo "logined successfully!<br>";
    exit();
    }
    else echo "login unsuccessful!<br>";
    }
    }
    ?>


    </body>
    </html>


    این هم ارور هاش:
    1:
    Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\wamp\www\login.php on line 22

    2:
    Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\wamp\www\login.php on line 24

    سوالم اینه چیکار کنم ارور ها برطرف شه یا این که با چه روشی مَچ بودن یوزر و پسورد رو بررسی کنم؟




    یه سوال دیگه هم این بود که یه صفحه رجیستر هم نوشتم که کاربرا بتونن از اونجا عضو بشن(مثلاً!) اما مشکلی که هست اینه که با این که ستون username رو به حالت PRIMARY_KEY گذاشتم اما باز نام های کاربری تکراری در پایگاه داده ذخیره می شه و اروری نمی ده...
    ممنون می شم دوستان جواب هر سوالی رو که بلدن بگن...

    اگه هم جای تاپیک اشتباهه مدیر ببخشه چون جای مناسب تری براش پیدا نکردم!

  2. #2

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    سلام

    اول اینکه این کد را
    $user_name=$_POST["user"];
    به این صورت بنویسید
    $user_name=$_POST['user'];

    دوم اینکه این کد را اشتباه نوشتید
    $query="SELECT password FROM users WHERE username=$user_name";

    توی کد نوشتید انتخاب کنه پسورد را از دیتابیس یوزر جایی که نام کاربری= نام کاربری باشه
    آخه پسورد چه ربطی به نام کاربری داره
    خخخخخخ

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1393
    محل زندگی
    اصفهان
    پست
    67

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    توی کد نوشتید انتخاب کنه پسورد را از دیتابیس یوزر جایی که نام کاربری= نام کاربری باشه
    آخه پسورد چه ربطی به نام کاربری داره
    خخخخخخ
    پسورد رو از جدول یوزرز جایی که ستون username برابره با چیزی که کاربر وارد کرده بیرون بکشه...
    این کجاش اشتباهه؟؟؟؟
    قراره بررسی بشه که نام کاربری و پسورد با هم مچ هستن یا نه...

  4. #4

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    سلام

    مشکل شما از اینجا هست تغییر بده جواب می گیری
    $query="SELECT password FROM users WHERE username='$user_name'";

    البته می تونی راحتر هم بنویسی



    $user_name=$_POST["user"];
    $password=$_POST['password'];
    $password=md5($password)
    $conn=mysqli_connect("localhost","mojtaba", "9addsfsf93gfh6","mojidb");
    $query=("SELECT * FROM `tbl_user` WHERE `username` = '$user' AND `password` = '$password' "
    $result=mysqli_query($conn,$query);
    if(mysqli_num_rows($result)==1)
    {
    echo "logined successfully!";

    )
    else echo "login unsuccessful!";



    آخرین ویرایش به وسیله saeidnejad.m : یک شنبه 25 مرداد 1394 در 22:12 عصر

  5. #5

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    سلام دوستان
    معنی این خطا در ارتباط با پایگاه داده چیه؟
    Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\test\check.php on line 2
    اینم خط دوم برنامه که همون دستور اتصال به پایگاه داده است
    $link=mysql_connect("localhost","","");
    ممنون میشم راهنماییم کنید

  6. #6

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    حل شد..
    دلیلش این بود که توی آخرین نسخه php باید به جای mysql از mysqli استفاده کنیم

  7. #7

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    سلام دوستان
    من یک فرمی رو به دیتابیس با کد های php منتقل کرده ام اما وقتی فرم خودم را به یک فایلی اکشن میکنم دیگه کوئری ها به سمت دیتابیس ارسال نمی شه

    چی کار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟

  8. #8
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1391
    پست
    97

    نقل قول: مشکل در ارتباط با پایگاه داده(کمک)

    جناب mojtaba.sln کار شما کاملا درست و تروتمیز بوده

    اون کاربر
    Master_Power که مسخره کرده
    نه میدونه php چیه ، نه sql بلده

    مشکل شما ساده تر از اونی بود که حتی فکرش رو کنید
    شما مثلا سعی کردید با نام کاربری nimda ورود کنید
    ولی این نام کاربری توی دیتابیس اصلا وجود نداره
    یا دیتابیس خالی هست

    به این کد دقت کنید :
    if(@mysqli_num_rows($result)==1){

    که @ باعث میشه اگه تعداد صفر باشه ، خطا نشون نده

    و باید بعدش حتما بنویسید :
    } else echo "this username is not exist.";

    موفق باشید



تاپیک های مشابه

  1. مشکل در ارتباط با پایگاه داده رمز دار
    نوشته شده توسط پارسا کیانبخت در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 13
    آخرین پست: جمعه 27 اردیبهشت 1392, 12:39 عصر
  2. مشکل در ارتباط با پایگاه داده
    نوشته شده توسط L_eskandary در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: شنبه 11 تیر 1390, 00:37 صبح
  3. سوال: مشکل در ارتباط با پایگاه داده پس از کامپایل
    نوشته شده توسط a.maleki در بخش VB.NET
    پاسخ: 13
    آخرین پست: سه شنبه 31 اردیبهشت 1387, 11:19 صبح
  4. مشکل در ارتباط با پایگاه داده
    نوشته شده توسط ayani2002 در بخش SQL Server
    پاسخ: 2
    آخرین پست: شنبه 24 آذر 1386, 13:12 عصر
  5. مشکل در ارتباط با پایگاه داده
    نوشته شده توسط mohandesan در بخش VB.NET
    پاسخ: 1
    آخرین پست: پنج شنبه 01 شهریور 1386, 06:45 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •