Skip to content
View in the app

A better way to browse. Learn more.

Web Designer Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

PHP and mySQL error problem

Featured Replies

Hi guys

 

Having an issue with some code:

 

	<?php
	$category_set = get_categories();

	while ($category = mysql_fetch_array($categorynav)) {
		echo "<li>{$category["category_name"]}</li>";
	}

	$subcat_set = get_subcat_for_categories($category["id"]);

	echo "<ul class=\"pages\">";

	while ($subcat = mysql_fetch_array($subcatnav)) {
		echo "<li>{$subcat["menu_name"]}</li";
	}
	echo "</ul>";
	?>

<?php

function confirm_query($result_set) {
if (!$result_set) {
		die("Database query failed: " . mysql_error());
}
}

function get_categories() {
global $db_connect;
$query = "SELECT * FROM 'admin_cat' ORDER BY 'position' ASC";
$categorynav = mysql_query($query) or die(mysql_error());
confirm_query($categorynav);
return $categorynav;
}

function get_subcat_for_categories($category_id){
global $db_connect;
$query = "SELECT * FROM 'pages' WHERE category_id = {$category["id"]} ORDER BY 'position' ASC";
$subcatnav = mysql_query($query) or die(mysql_error());
confirm_query($subcatnav);
return $subcatnav;
}
?>

 

 

I am getting this error:

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 ''subjects' ORDER BY 'position' ASC' at line 1

 

Anyone know why this is :)

 

Thanks guys :)

 

Joe

  • Author

Hi,

 

You don't need quotations around 'position'.

 

Also, change {$category["id"]} to {$category['id']}

 

 

Hi thanks for your reply, Unfortunately still getting same error :)

 

Thanks

Joe

Hi thanks for your reply, Unfortunately still getting same error :)

 

Thanks

Joe

 

Replace all that code with the below

 

<?php

function confirm_query($result_set) {
       if (!$result_set) {
                       die("Database query failed: " . mysql_error());
       }
}

function get_categories() {
       global $db_connect;
       $query = "SELECT * FROM admin_cat ORDER BY position ASC";
       $categorynav = mysql_query($query) or die(mysql_error());
       confirm_query($categorynav);
       return $categorynav;
}

function get_subcat_for_categories($category_id){
       global $db_connect;
       $query = "SELECT * FROM pages WHERE category_id = '".$category['id']."' ORDER BY position ASC";
       $subcatnav = mysql_query($query) or die(mysql_error());
       confirm_query($subcatnav);
       return $subcatnav;
}
?>

 

Should work :)

  • Author

Replace all that code with the below

 

<?php

function confirm_query($result_set) {
       if (!$result_set) {
                       die("Database query failed: " . mysql_error());
       }
}

function get_categories() {
       global $db_connect;
       $query = "SELECT * FROM admin_cat ORDER BY position ASC";
       $categorynav = mysql_query($query) or die(mysql_error());
       confirm_query($categorynav);
       return $categorynav;
}

function get_subcat_for_categories($category_id){
       global $db_connect;
       $query = "SELECT * FROM pages WHERE category_id = '".$category['id']."' ORDER BY position ASC";
       $subcatnav = mysql_query($query) or die(mysql_error());
       confirm_query($subcatnav);
       return $subcatnav;
}
?>

 

Should work :)

 

 

Hey thanks for reply tried it now getting the following errors:

 

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/amazin95/public_html/admin/includes/adminsidebar.php on line 7

 

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/amazin95/public_html/admin/includes/adminsidebar.php on line 15

 

adminsidebar.php

               <?php
               $category_set = get_categories();

               while ($category = mysql_fetch_array($categorynav)) {
                       echo "<li>{$category["category_name"]}</li>";
               }

               $subcat_set = get_subcat_for_categories($category["id"]);

               echo "<ul class=\"pages\">";

               while ($subcat = mysql_fetch_array($subcatnav)) {
                       echo "<li>{$subcat["menu_name"]}</li";
               }
               echo "</ul>";
               ?>

 

functions.php

<?php

function confirm_query($result_set) {
       if (!$result_set) {
                       die("Database query failed: " . mysql_error());
       }
}

function get_categories() {
       global $db_connect;
       $query = "SELECT * FROM admin_cat ORDER BY position ASC";
       $categorynav = mysql_query($query) or die(mysql_error());
       confirm_query($categorynav);
       return $categorynav;
}

function get_subcat_for_categories($category_id){
       global $db_connect;
       $query = "SELECT * FROM pages WHERE category_id = '".$category['id']."' ORDER BY position ASC";
       $subcatnav = mysql_query($query) or die(mysql_error());
       confirm_query($subcatnav);
       return $subcatnav;
}
?>

This is driving me mad now lol 

Thanks for all help guys 

should $subcat_set = get_subcat_for_categories($category["id"]);

be $subcat_set = get_subcat_for_categories($category['id']);

 

and

echo "<li>{$subcat["menu_name"]}</li";

 

be

echo "<li>{$subcat["menu_name"]}</li>";

  • Author

should $subcat_set = get_subcat_for_categories($category["id"]);

be $subcat_set = get_subcat_for_categories($category['id']);

 

and

echo "<li>{$subcat["menu_name"]}</li";

 

be

echo "<li>{$subcat["menu_name"]}</li>";

 

Hi there

 

tried changing that still getting the exact same error :(

 

Im really lost with this

 

Thanks

Joe

are you connecting to the database okay?

  • Author

are you connecting to the database okay?

 

 

YEh i think so it was all working before i split code into functions and added the "ORDER BY posistion ACS"

 

:)

and I guess the $db_connect is defined somewhere else?

Hi,

 

Give this a go:

 

<?php 
$category_set = get_categories(); 

while ($category = mysql_fetch_array($categorynav)) { 
echo "<li>{$category['category_name']}</li>"; 
} 

$subcat_set = get_subcat_for_categories($category["id"]); 

echo "<ul class=\'pages\'>"; 

while ($subcat = mysql_fetch_array($subcatnav)) { 
echo "<li>{$subcat['menu_name']}</li"; 
} 
echo "</ul>"; 
?>

 

 

And

 

 

<?php 

function confirm_query($result_set) { 
       if (!$result_set) { 
                       die("Database query failed: " . mysql_error()); 
       } 
} 

function get_categories() { 
       global $db_connect; 
       $query = "SELECT * FROM admin_cat ORDER BY position ASC"; 
       $categorynav = mysql_query($query) or die(mysql_error()); 
       confirm_query($categorynav); 
       return $categorynav; 
} 

function get_subcat_for_categories($category_id){ 
       global $db_connect; 
       $query = "SELECT * FROM pages WHERE category_id = '.$category['id'].' ORDER BY position ASC"; 
       $subcatnav = mysql_query($query) or die(mysql_error()); 
       confirm_query($subcatnav); 
       return $subcatnav; 
} 
?>

  • Author

Hi,

 

Give this a go:

 

<?php 
$category_set = get_categories(); 

while ($category = mysql_fetch_array($categorynav)) { 
echo "<li>{$category['category_name']}</li>"; 
} 

$subcat_set = get_subcat_for_categories($category["id"]); 

echo "<ul class=\'pages\'>"; 

while ($subcat = mysql_fetch_array($subcatnav)) { 
echo "<li>{$subcat['menu_name']}</li"; 
} 
echo "</ul>"; 
?>

 

 

And

 

 

<?php 

function confirm_query($result_set) { 
       if (!$result_set) { 
                       die("Database query failed: " . mysql_error()); 
       } 
} 

function get_categories() { 
       global $db_connect; 
       $query = "SELECT * FROM admin_cat ORDER BY position ASC"; 
       $categorynav = mysql_query($query) or die(mysql_error()); 
       confirm_query($categorynav); 
       return $categorynav; 
} 

function get_subcat_for_categories($category_id){ 
       global $db_connect; 
       $query = "SELECT * FROM pages WHERE category_id = '.$category['id'].' ORDER BY position ASC"; 
       $subcatnav = mysql_query($query) or die(mysql_error()); 
       confirm_query($subcatnav); 
       return $subcatnav; 
} 
?>

 

Thanks for your reply however has still not fixed the problem, totally lost guys :)

  • Author

and I guess the $db_connect is defined somewhere else?

 

 

I have a seperate file called db_connect.php :)

not sure what to suggest, I'd be sticking in lots of echo statements to ensure everything is getting to places it should and has values you expect.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.