رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
درخواست راهنمایی جهت رفع خطای کد
#1
باسلام.
من در کلاس category ، که همگام با آموزش های شما پیش میرفتم ،
با همچین خطایی برخوردم.
نقل قول:

Fatal error: Cannot use isset() on the result of a function call (you can use "null !== func()" instead) in C:\laragon\www\shop2\inc\class.Category.php on line 12


و کد کلاس category هم اینه.
<?php
/**
* 
*/
 final class Category extends DB implements CRUD
{

    Public function Create($params=array()) {
        if(isset($params['name'])){
        $name= $this->Escape($params['name']);
        }
        if(isset($params(['parent_id']))) {
            $parent= '\''. $this->Escape($parent. '\'');
        }

        if (isset($params['hidden'])) {
            $hidden= $this->Escape($hidden);
        }

        $this->Query("INSERT INTO `Category` values(NULL, '{$name}', '{$parent}' , '{$hidden}')");
        return $this->AffectedRows();
    }




    Public function read($params=array()) {
        if(!isset($params['parent_id'])) {
            return $this->ArrayQuery("SELECT * FROM Category WHERE `parent_id` IS NULL AND `hidden`='0' ORDER BY `name` ");
        }
        $parent= $this->Escape($parent);
        return $this->ArrayQuery("SELECT * FROM Category WHERE `parent_id`='($parent)' AND `hidden`='0' ORDER BY `name`");
    }

    Public function Update($params=array()) {
        if (isset($params['id'])) {
        $id= $this->Escape($params['id']);
        $Query='UPDATE FROM `Category` SET';
        if(isset($params['name'])) {
            $name= $this->Escape($params['name']);
            $Query.="`name`= '{$name}'";
        }

        if(isset($params['hidden'])) {
            $hidden=$this->Escape($hidden);
            $Query.=($name?',': '')."`hidden`='{$hidden}'";
        }
        $Query.= "WHERE (`id`= '{$id}')";
        $this->Query($Query);
        return $this->AffectedRows();
    }
}
        Public function Delete($id) {
            $id= $this->Escape($id);
            $this->Query("DELETE FROM `Category` WHERE (`id`= '{$id}')");
            return $this->AffectedRows();
        }


    }


?>


و اما خطای بعدی :
من در دیتابیس اطلاعاتی رو که درج کردم ،
واسه نمایششون خطا میده.
و میگه فیدهای آیدی ، نام و.. ، پیدا نشد !!
یعنی شناخته نشدن.
و اررور خط کد هم اینه.


در فایل Header.php

<?php
 require_once ROOT.'inc/class.Category.php';
                    $cat=new Category();
                    $categories=$cat->read();
                    $cat->Update();
                    $cat->Create();
                    $cat->Delete();
                   // $categories= $db->ArrayQuery("SELECT * FROM category WHERE parent_id = NULL and hidden='0'  " ); 
                    foreach ($categories as $category) {
                        $subcategories= $cat->read($category['id']);
                        if(count($subcategories)>0) {
                            echo '<li class="dropdown">';
                            echo '<a href= "' . ADDR. 'category.php?cat='. $category['id'] . '"  class="dropdown-toggle" data-toggle="dropdown" />';
                            echo '<ul class="dropdown-menu">';
                            foreach($subcategories as $category) {
                                echo '<li><a href=" ' . ADDR. 'category.php?cat=' . $subcategories['id'] . '">'. $subcategories['name'] . '<span class="caret"></span></a>'; 
                            }
                            echo '</ul>';
                            echo '</li>';
                        }
                        else {
                            echo '<li><a href= "' .ADDR . 'category.php?cat=' . $category['id'] . '">' . $category['name']. '</a></li>';
                        }
                    }
                    ?> 
پاسخ
تشکر شده توسط:
#2
بجای اینکه چندبار یک سؤال رو توی چند تاپیک بپرسید، تاپیک قبلی رو بررسی کنید: http://forum.ncis.ir/Thread-%D8%AE%D8%B7...9#pid10079

ضمناً از بکاربردن عباراتی مثل لطفاً سریع جواب بدین و... خودداری کنید.
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان