Having a touch of trouble with a mysql query :(

C++, C#, Java, PHP, ect...
Post Reply
User avatar
Torniquet
Posts: 869
Joined: Sun Aug 02, 2009 6:18 am

Having a touch of trouble with a mysql query :(

Post by Torniquet »

ok i am sorting out pagination for my members list which only displays email active people... and you can also filter by 1st letter of the username.

when you filter by all or a letter it works fine. but when it comes to numbers, it doesnt filter out those which are and arnt activated by email :(

here is the code, can anyone point me in the right direction on what to change lol.

Code: Select all

if($order == 'num'){
	
	$memberTotal = mysql_num_rows(mysql_query("SELECT id FROM user_list WHERE name_tag = '1' OR name_tag = '2' OR name_tag = '3' OR name_tag = '4' OR name_tag = '5' OR name_tag = '6' OR name_tag = '7' OR name_tag = '8' OR name_tag = '9' OR name_tag = '0' AND email_active = '1'"));

	$getList = mysql_query("SELECT id, username FROM user_list WHERE name_tag = '1' OR name_tag = '2' OR name_tag = '3' OR name_tag = '4' OR name_tag = '5' OR name_tag = '6' OR name_tag = '7' OR name_tag = '8' OR name_tag = '9' OR name_tag = '0' AND email_active = '1' ORDER BY id ASC LIMIT $startID, $perPage");
	
}
Ta x
New Site Coming Soon! Stay tuned :D
User avatar
hallsofvallhalla
Site Admin
Posts: 12026
Joined: Wed Apr 22, 2009 11:29 pm

Re: Having a touch of trouble with a mysql query :(

Post by hallsofvallhalla »

are you just getting a blank page? What is the current result?

Try removing the single quotes from around the numbers ans seeing the result.

Code: Select all

WHERE name_tag = '1'
to

Code: Select all

WHERE name_tag = 1
User avatar
Torniquet
Posts: 869
Joined: Sun Aug 02, 2009 6:18 am

Re: Having a touch of trouble with a mysql query :(

Post by Torniquet »

no i am getting results, but it is including NON email active accounts. which i dont want it to do :(

if you look it lists the numbers then says AND email_active = '1'

but for some reason it seems to be ignoring that call out :(

will have a play around see if i can fix it :s if not i hope a brainy bugger will shed some light on it lol
New Site Coming Soon! Stay tuned :D
User avatar
hallsofvallhalla
Site Admin
Posts: 12026
Joined: Wed Apr 22, 2009 11:29 pm

Re: Having a touch of trouble with a mysql query :(

Post by hallsofvallhalla »

well according to your query its going to include name_tag = '0' AND email_active = '1' as the only AND active email

instead try this

Code: Select all

 $memberTotal = mysql_num_rows(mysql_query("SELECT id FROM user_list WHERE email_active = '1' AND name_tag = '1' OR name_tag = '2' AND email_active = '1' OR name_tag = '3' AND email_active = '1' OR name_tag = '4' AND email_active = '1' OR name_tag = '5' AND email_active = '1' OR name_tag = '6' AND email_active = '1' OR name_tag = '7' AND email_active = '1' OR name_tag = '8' AND email_active = '1' OR name_tag = '9' AND email_active = '1' OR name_tag = '0' AND email_active = '1' "));
User avatar
Torniquet
Posts: 869
Joined: Sun Aug 02, 2009 6:18 am

Re: Having a touch of trouble with a mysql query :(

Post by Torniquet »

genious :)

but just after i tried that i had a brainwave of my own lol.

Code: Select all

$memberTotal = mysql_num_rows(mysql_query("SELECT id FROM user_list WHERE (name_tag = '1' OR name_tag = '2' OR name_tag = '3' OR name_tag = '4' OR name_tag = '5' OR name_tag = '6' OR name_tag = '7' OR name_tag = '8' OR name_tag = '9' OR name_tag = '0') AND email_active = '1'"));
	
	$getList = mysql_query("SELECT id, username FROM user_list WHERE (name_tag = '1' OR name_tag = '2' OR name_tag = '3' OR name_tag = '4' OR name_tag = '5' OR name_tag = '6' OR name_tag = '7' OR name_tag = '8' OR name_tag = '9' OR name_tag = '0') AND email_active = '1' ORDER BY username ASC LIMIT $startID, $perPage");
that seems to have worked aswell :)

Thank you anyways :)
New Site Coming Soon! Stay tuned :D
User avatar
hallsofvallhalla
Site Admin
Posts: 12026
Joined: Wed Apr 22, 2009 11:29 pm

Re: Having a touch of trouble with a mysql query :(

Post by hallsofvallhalla »

whatever works for you :) glad you solved it
Post Reply

Return to “Coding”