تالار گفتمان nCIS.ir

نسخه‌ی کامل: عدم نمایش محصولات
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
صفحات: 1 2
سلام
توي پروزه فروشگاه من هرمطلبي توي جدول category وارد ميکنم توي صفحه هيچيزي نشون داده نميشه لطفا راهنمايي کنيد
header.php
<!doctype html>
<html>
<head>
<title><?php echo TITR; ?></title>
<meta charset="utf-8" />
<link href="<?php echo ADDR; ?>css/style.css" rel="stylesheet">
<link href="<?php echo ADDR; ?>css/bootstrap.rtl.min.css" rel="stylesheet" />
<link href="<?php echo ADDR; ?>css/font-awesome.min.css" rel="stylesheet" />
<link href="<?php echo ADDR; ?>css/sticky-footer-navbar.css" rel="stylesheet">
</head>
<body>


<!-- Fixed navbar -->
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span> <span
class="icon-bar"></span> <span class="icon-bar"></span> <span
class="icon-bar"></span>
</button>
<a class="navbar-brand" href="<?php echo ADDR; ?>"><span class="fa fa-comments"></span> <?php echo TITR; ?></a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<?php
$db=new DB();

   $categories=$db->ArrayQuery('SELECT * FROM `category` WHERE (`visible`='1')');
       foreach($categories as $category) {
                           echo '<li><a href="' . ADDR . 'category.php?cat=' . ['id'] . '">' . $category['name'] . '</a></li>' . PHP_EOL;
                       }
?>
</ul>
</div>
<!--/.nav-collapse -->
</div>
</div>
<!-- Begin page content -->
<div class="container">

class.DB.php
<?php
class DB{
private $con;
public function __construct() {
       $this->con = mysql_connect(HOST, USER, PASS) or die('Connection error');
       mysql_select_db(NAME, $this->con) or die('Database error');
       $this->Query('SET NAMES 'utf8'');
       mysql_set_charset('utf8');
   }

public function AffectedRows(){
if($this->con){
return (  mysql_affected_rows($this->con));
}
return 0;
}

public function ArrayQuery($Query){
$result=array();
if($this->con){
$rows=$this->Query($Query);
if($rows && mysql_num_rows($rows)>0){
while($row=mysql_fetch_assoc($rows)){
$result[]=$row;
}
}
}
return $result;

}

public function Escape($value){
if($this->con){
return mysql_real_escape_string($value,$this->con);
}

return false;

}

public function Query($query){
if($this->con){
return mysql_query($query,$this->con);
}

return false;
}
}

?>
اگه چیزی نشون داده نمیشه، mysql_error رو echo کنید ببینیم شاید خطایی توی کوئری داشتین.
درود
من مجبور شدم يه بار ديگه پروژه رو از اول بنويسم حالا اين ارور رو ميده
Fatal error: Call to undefined function ArrayQuery() in C:xampphtdocsshopheader.php on line 28
این خطا معمولاً زمانی رخ میده که شما متد یا تابعی که اصلاً وجود نداره یا اشتباه تایپ شدرو داری فراخوانی می کنی .
لطفاً کد جدیدتو قرار بده
دوست من شاید بخاطر اینه که فایل header.php را آخر همه نگذاشتی
باید فایل header.php آخرین require_once تو باشد
کدهای جدید
<?php  
class DB{
private $con;

public function __construct(){
$this->con=mysql_connect(HOST,USER,PASS) or die('conection error');
mysql_select_db(NAME,$this->con)or die('database error');

$this->Query('SET NAMES 'utf8'');
mysql_set_charset('utf8');

}

public function AffectedRows(){
if($this->con){
return mysql_affected_rows($this->con);
}
return  0;
}

public function ArrayQuery($query){
$result=array();
if($this->con){
$rows=$this->Query($query);
if($rows && mysql_num_rows($rows)>0){
while($row=mysql_fetch_assoc($result)){
$result[]=$row;
}
}
}
return $result;
}

public function Escape($value){
if($this->con){
return mysql_real_escape_string($value,$this->con);
}

return false;
}

public function Query($query){
if($this->con){
return mysql_query($query,$this->con);
}
return false;
}
}


?>
<head>
<title><?php echo TITR; ?></title>
<meta charset="utf-8" />
<link href="<?php echo ADDR; ?>css/style.css" rel="stylesheet">
<link href="<?php echo ADDR; ?>css/bootstrap.rtl.min.css" rel="stylesheet" />
<link href="<?php echo ADDR; ?>css/font-awesome.min.css" rel="stylesheet" />
<link href="<?php echo ADDR; ?>css/sticky-footer-navbar.css" rel="stylesheet">
</head>
<body>
<!-- Fixed navbar -->
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span> <span
class="icon-bar"></span> <span class="icon-bar"></span> <span
class="icon-bar"></span>
</button>
<a class="navbar-brand" href="<?php echo ADDR; ?>"><span class="fa fa-comments"></span> <?php echo TITR; ?></a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<?php
$db=new DB();
       $categories = ArrayQuery('SELECT * FROM `categories` WHERE (`hidden`='0')');
       foreach($categories as $category) {
                           echo '<li><a href="' . ADDR . 'category.php?cat=' . $category['id'] . '">' . $category['name'] . '</a></li>' . PHP_EOL;
                       }
?>
</ul>
</div>
<!--/.nav-collapse -->
</div>
</div>
<!-- Begin page content -->
<div class="container">
خوب با این کدهای جدید مشکل حل شد یا نه؟
نه ديگه ! گفتم که اين ارور رو ميده

Fatal error: Call to undefined function ArrayQuery() in C:xampphtdocsshopheader.php on line 28

يکي از دوسنان گفت کدهاي جديدت رو بذار منم گذاشتم!
باید بگین db->ArrayQuery$ چون متد روی شئ کلاس صدا زده میشه نه مستقیم.
ممنون از راهنماييتو ارور رفع شد،اسم جدول رو توي query اشتباه نوشته بودم درستش کردم حالا يه ارور ديگه داد
نقل قول:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, array given in C:xampphtdocsshopincclass.DB.php on line 26
$result=$this->Query($query);
if($result && mysql_num_rows($result)>0){
این جوری درسته
لاین 24 و 25 را بدین شکل تغییر بده
اين ارورها رو داد
Warning: Cannot use a scalar value as an array in C:xampphtdocsshopincclass.DB.php on line 27

Warning: Cannot use a scalar value as an array in C:xampphtdocsshopincclass.DB.php on line 27

Warning: Cannot use a scalar value as an array in C:xampphtdocsshopincclass.DB.php on line 27

Warning: Cannot use a scalar value as an array in C:xampphtdocsshopincclass.DB.php on line 27

Warning: Invalid argument supplied for foreach() in C:xampphtdocsshopheader.php on line 29
دوست عزیزم این یک کد سادست که آقای مهندس شهرکی عینا همین رو نوشته بدون هیچ تغییری
اون کد را ببین و با کد خودت مقایسه کن ببین مشکل کجاست .
بعضی وقتا مشکل تو یه یک حرفه یا یک نقطه یا ...
حالا شما در پکیج مقدماتی تا پیشرفته کد های دیتابیس shop رو ببین و با این کدها مقایسه کن
امیدوارم مشکلت حل شه
(21-05-1394، 06:44 ب.ظ)tabesh نوشته: [ -> ]دوست عزیزم این یک کد سادست که آقای مهندس شهرکی عینا همین رو نوشته بدون هیچ تغییری
اون کد را ببین و با کد خودت مقایسه کن ببین مشکل کجاست .
بعضی وقتا مشکل تو یه یک حرفه یا یک نقطه یا ...
حالا شما  در پکیج مقدماتی تا پیشرفته کد های دیتابیس shop رو ببین و با این کدها مقایسه کن
امیدوارم مشکلت حل شه

تشکر فراوان بخاطر راهنمایی ولی اون کدها به مرور تکمیل شدند،بله اگه هر قسمتی که مینوشتند رو جداگانه در یک فایل ذخیره میکرند حرف شما درست بود
(21-05-1394، 08:03 ب.ظ)harand نوشته: [ -> ]تشکر فراوان بخاطر راهنمایی ولی اون کدها به مرور تکمیل شدند،بله اگه هر قسمتی که مینوشتند رو جداگانه در یک فایل ذخیره میکرند حرف شما درست بود

  public function ArrayQuery($query) {
    $result = array();
    if($this->con) {
        $rows = $this->Query($query);
        if($rows && mysql_num_rows($rows) > 0) {
            while($row = mysql_fetch_assoc($rows)) {
                $result[] = $row;
            }
        }
    }
    return $result;
}
این کد درست arrayQuery استاد شهرکی است
صفحات: 1 2