Jump to content

There is no errors but data from database doesn't show on the site


Recommended Posts

I'm building a site with bootstrap and trying to make the menu dynamic.created a database with xampp.it seems that there is connection because it showed some errors that I fixed.But now there are no erorrs but the data doesn't show on the website.

it should be  navigation menu with sublinks. Here is my code:

would be very grateful for your help

<?php
$sql = "SELECT * FROM categories WHERE parent=0";
$pquery = $db->query($sql);?>
<nav class="navbar navbar-default navbar-fixed-top" id="navbar" >
<div class="container">
<a href="index.php" class="navbar-brand" id="text">Kippah store</a>
<ul class="nav navbar-nav">
<?php while($parent = mysqli_fetch_assoc($pquery));?>
<?php
$parent_id= $parent['id'];
$sql2 = "SELECT * FROM categories WHERE parent='parent_id'";
$cquery = $db->query($sql2); ?>
<li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"
id="text"><?php echo $parent['category'];?><span class="caret"></span></a>
 <ul class="dropdown-menu" role="menu">
<?php while($child = mysqli_fetch_assoc($cquery));?>
 <li><a href="#"><?php echo $child['category'];?></a></li>
 
 </ul>
 </li>
 
 </ul>
</div>
</nav>

Hi I'm a beginner so maybe I didn't understand the logic -what I have is a categories table within it I have a 3 fields : id , category, parent the id is the primary key

the items in category have id(primary key) and they also have a number of parent from 0 to 4 . The category that assigned parent=0 should be the header link in the and below it the category with parent 1 2 3 4 et... so variable parent_id receives fro the parent[id] the 1,2,3,4 and from there it goes to the query of sql2 that puts in $sql 2 all the category that have parent 1,2,3,4 .I'm really beginner so maybe something is wrong with my logic.Would be very grateful for your help.

Your logic is fine (although it's not the most efficient way to do it). It's your implementation of that's at fault.

 

Above you mention the variable $parent_id and using that in the second query. But you aren't doing that. As two of us have pointed out, you are searching for categories whose parent matches the literal string value "parent_id" and not the variable.

 

The efficient way is not to run queries inside a loop. You should run a single query, using a JOIN, to get all your required data.

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.