Witam otóż piszę swój własny projekt strony www i chciałem zrobić system kategorii np tworzenie kategorii a potem podkategorii w nim. Lecz chciałem zrobić tak jak nie ma żadnej kategorii w bazie to nie pokazuje selectu a jak jest to żeby pokazywało select a w nim kategorie np.
Kategoria1
Podkategoria1
Podkategoria2
Kategoria2
Podkategoria1
Podkategoria2
Podpodkategoria1 :)
I jako tako napisałem skrypt ale coś mi w nim nie działa na pokazywanie tagu select
oto mój skrypt php:
public function select2($parent_id = NULL, $sub_mark = ''){
if($parent_id == null) {
$sql = $this->db->dbo->query("SELECT * FROM `category` ORDER BY title ASC");
} else {
$sql = $this->db->dbo->query("SELECT * FROM `category` WHERE `parent_id` = `$parent_id`");
}
while($row = $sql->fetch(PDO::FETCH_OBJ)) {
echo $row->title;
echo '<option value="'. $row->id .'">'. $row->title .'</option>';
$xb = new Category;
$xb->select2($row->id, $sub_mark.' ');
}
}
public function select() {
$sql3 = $this->db->dbo->query("SELECT * FROM category");
if( $sql3->fetch(PDO::FETCH_NUM) > 0 ) {
echo '<select class="select" id="add_category_category">';
$xc = new Category;
$xc->select2();
echo '</select>';
}
}
Błąd który mi pokazuje na stronie to:
Fatal error
: Uncaught Error: Call to a member function fetch() on bool in /opt/lampp/htdocs/po/class/category.php:19 Stack trace: #0 /opt/lampp/htdocs/po/class/category.php(23): Category->select2('1', ' ') #1 /opt/lampp/htdocs/po/admin/category.php(84): Category->select2() #2 {main} thrown in
/opt/lampp/htdocs/po/class/category.php
on line 19
te 2 funkcje są wyjęte z środka klasy jak by coś :)