PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مشکل در کار با mysql در php



gonabad
March 7th, 2014, 22:23
من می خوام یک فروشگاه اینترنتی لوازم خانگی طراحی کنم (پروژه دانشگاه) اما وقتی می خوام با پایگاه داده کار کنم خطا میده:
خطایی که میده:
( ! ) Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in D:\EasyPHP-5.3.5.0\www\Project-Shop\class\login.php on line 15


$username =



string 'gonabad' (length=7)

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''seller' WHERE username ='gonabad'' at line 1

**********************************************

کدهای صفحه login.html
این صفحه فرمی داره که یوزر نیم و پسورد را می پرسه و اطلاعات دریافتی را به فایل login.php ارسال میکنه.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>صفحه ورود به مدیریت فروشگاه</title>
<link rel="stylesheet" type="text/css" href="style/style.css" />
</head>

<body>
<div class="continer">
<div id="header">
<ul class="topmenu">
<li><a hre="">صفحه اصلی</a></li>
<li><a hre="product.html">محصولات فروشکاه</a></li>
<li><a hre="">مشتریان</a></li>
<li><a hre="">حسابداری</a></li>
<li><a hre="">ارتباط با مدیریت</a></li>
</ul>
</div>
<div class="content">
<div class="slide-right">
<form action="class/login.php" method="post">
<p>
<label>نام کاربری:</label><input type="text" name="username" />
</p>
<p>
<label>رمزعبور:</label><input type="password" name="password" />
</p>
<input type="submit" class="btn" value="ورود"/>

</form>
</div>
<div class="slide-left">


</div>
</div>
<div class="footer">

</div>
</div>
</body>
</html>


کدهای صفحه ی login.php
این صفحه کدهای php برای اعتبار سنجی کاربر را برعهده دارد. در کدهای این صفحه فایل config.php که وظیفه ارتباط با پایگاه داده را برعهده دارد را include کرده ام.


<?php
session_start();
if(!isset($_POST["username"])){
die('شما هنوزوارد نشدید');
}
$username=$_POST["username"];
$password=$_POST["password"];

include('config.php');

myconnect();

$result = mysql_query("SELECT password FROM 'seller' WHERE username ='$username'");

$numresult = mysql_num_rows($result) or die(mysql_error());


if($numresult == 1){
$password2 = mysql_result($result,0);
if($password == $password2){
$_SESSION["username"]='$username';

header("loction:../index.html");
exit();
}
}
?>
<h1>ورود ناموفق</h1><br/>
<h1>نام کاربری یا رمزعبور اشتباه می باشد</h1><br/>
<a href="../login.html">صفحه اصلی</a>




فایل config.php
این فایل وظیفه اتصال با سرور پایگاه داده و پایگاه داده را برعهده دارد.

<?php
function myconnect(){
mysql_connect("localhost", "root", "")//اطلاعات اتصال
or die(mysql_error());
echo "ارتباط برقرار شد!<br />";
mysql_select_db("shop")//نام دیتابیس
or die(mysql_error());
echo "ارتباط با پایگاه داده برقرار شد!<br />";
}
?>
*******************
تمام فایل های پروژه در فایل فشرده گذاشته شد. لطفا کمک کنید.
پایگاه داده پروژه هم ضمیمه شد

woods_f
March 8th, 2014, 00:19
دوست عزیز مشکل شما در استفاده نادرست از syntax های mysql در خط


$result = mysql_query("SELECT password FROM 'seller' WHERE username ='$username'");

شما باید این گونه این خط را تغییر دهید




$result = mysql_query("SELECT `password` FROM `seller` WHERE `username` ='$username'");