Forum Moderators: coopster
This script works perfectly to get the country of the user but now i want to make a subquery in this one so it FIRST selects the country and then the departement not both thats all i could make. Dont know what i mean just ask it ill reply pretty fast..
But it doesnt work well
actually it shows all records in the database
$query = "SELECT
order_id,
order_status_manager,
order_status_finance,
order_status_it
FROM $table
WHERE order_id NOT IN (select order_id FROM mos_pshop_order_user_info WHERE country!='$mycountry' OR department!='$department')";
$result = mysql_db_query("$Database",$query) or die ("Error: ".mysql_error());
What is in the variable $table?
Michal Cibor
//Get database table
$table ="mos_pshop_orders";
//Get database table
$orderinfotable ="mos_pshop_order_user_info";
//get 2cond table
$sessiontable ="mos_session";
//get usertable
$usertable = "mos_users";
this might explain why i used $table :P
i short them this way its way easyer i find
ill check it out thanks btw my var for departement is $mydepartement ;)
Example
Logged in--> username : Manager-IT-NLD
country : NLD
departement : mydept
usertable
username--country--departement.
user1,----NLD------mydept-----.<-- OK <-- Gets posted
user2-----USA------mydept-----.<-- Not OK <-- Gets posted
user3-----NLD------notmydept--.<-- Not OK <-- Gets posted
user4-----USA------notmydept--.<-- Not OK <-- not posted
but now it will post all people who have mydept or nld
but i want them to have nld and mydept.
is this clear enough?
As I understand, you want to select something that is in your country and in your department?
$query = "SELECT
order_id,
order_status_manager,
order_status_finance,
order_status_it
FROM $table
WHERE order_id IN (SELECT order_id FROM mos_pshop_order_user_info WHERE country='$mycountry' AND mydepartment='$mydepartment')";
$result = mysql_db_query("$Database",$query) or die ("Error: ".mysql_error());
Is that true?
Michal
$query =
"SELECT order_id,
order_status_it,
order_status_manager,
order_status_finance
FROM $table
WHERE order_id IN (select order_id FROM mos_users WHERE country='$mycountry' AND departement='$mydepartement')";
Field Type Collation Null Key Default Extra Privileges Comment
-------------------- ------------- ----------------- ------ ------ ------- -------------- ------------------------------- -------
order_id int(11) NULL PRI (NULL) auto_increment select,insert,update,references
user_id varchar(32) latin1_swedish_ci MUL select,insert,update,references
vendor_id int(11) NULL MUL 0 select,insert,update,references
order_number varchar(32) latin1_swedish_ci YES MUL (NULL) select,insert,update,references
user_info_id varchar(32) latin1_swedish_ci YES MUL (NULL) select,insert,update,references
order_total decimal(10,2) NULL 0.00 select,insert,update,references
order_subtotal decimal(10,2) NULL YES (NULL) select,insert,update,references
order_tax decimal(10,2) NULL YES (NULL) select,insert,update,references
order_shipping decimal(10,2) NULL YES (NULL) select,insert,update,references
order_shipping_tax decimal(10,2) NULL YES (NULL) select,insert,update,references
coupon_discount decimal(10,2) NULL 0.00 select,insert,update,references
order_discount decimal(10,2) NULL 0.00 select,insert,update,references
order_currency varchar(16) latin1_swedish_ci YES (NULL) select,insert,update,references
order_status char(1) latin1_swedish_ci YES (NULL) select,insert,update,references
cdate int(11) NULL YES (NULL) select,insert,update,references
mdate int(11) NULL YES (NULL) select,insert,update,references
ship_method_id varchar(255) latin1_swedish_ci YES MUL (NULL) select,insert,update,references
customer_note text latin1_swedish_ci select,insert,update,references
ip_address varchar(15) latin1_swedish_ci select,insert,update,references
order_status_it varchar(10) latin1_swedish_ci Pending select,insert,update,references
order_status_finance varchar(10) latin1_swedish_ci Pending select,insert,update,references
order_status_manager varchar(10) latin1_swedish_ci Pending select,insert,update,references
Field Type Collation Null Key Default Extra Privileges Comment
------------------- ---------------------------------------------- ----------------- ------ ------ ------------------- -------------- ------------------------------- -------
id int(11) NULL PRI (NULL) auto_increment select,insert,update,references
name varchar(50) latin1_swedish_ci MUL select,insert,update,references
username varchar(25) latin1_swedish_ci select,insert,update,references
email varchar(100) latin1_swedish_ci select,insert,update,references
password varchar(100) latin1_swedish_ci select,insert,update,references
usertype varchar(25) latin1_swedish_ci MUL select,insert,update,references
block tinyint(4) NULL 0 select,insert,update,references
sendEmail tinyint(4) NULL YES 0 select,insert,update,references
gid tinyint(3) unsigned NULL 1 select,insert,update,references
registerDate datetime NULL 0000-00-00 00:00:00 select,insert,update,references
lastvisitDate datetime NULL 0000-00-00 00:00:00 select,insert,update,references
activation varchar(100) latin1_swedish_ci select,insert,update,references
params text latin1_swedish_ci select,insert,update,references
user_info_id varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
address_type char(2) latin1_swedish_ci YES BT select,insert,update,references
address_type_name varchar(32) latin1_swedish_ci YES -default- select,insert,update,references
company varchar(64) latin1_swedish_ci YES (NULL) select,insert,update,references
title varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
last_name varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
first_name varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
middle_name varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
phone_1 varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
phone_2 varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
fax varchar(32) latin1_swedish_ci YES (NULL) select,insert,update,references
address_1 varchar(64) latin1_swedish_ci select,insert,update,references
address_2 varchar(64) latin1_swedish_ci YES (NULL) select,insert,update,references
city varchar(32) latin1_swedish_ci select,insert,update,references
state varchar(32) latin1_swedish_ci select,insert,update,references
country varchar(32) latin1_swedish_ci select,insert,update,references
zip varchar(32) latin1_swedish_ci select,insert,update,references
extra_field_1 varchar(255) latin1_swedish_ci YES (NULL) select,insert,update,references
extra_field_2 varchar(255) latin1_swedish_ci YES (NULL) select,insert,update,references
extra_field_3 varchar(255) latin1_swedish_ci YES (NULL) select,insert,update,references
extra_field_4 char(1) latin1_swedish_ci YES (NULL) select,insert,update,references
extra_field_5 char(1) latin1_swedish_ci YES (NULL) select,insert,update,references
perms varchar(40) latin1_swedish_ci shopper select,insert,update,references
bank_account_nr varchar(32) latin1_swedish_ci select,insert,update,references
bank_name varchar(32) latin1_swedish_ci select,insert,update,references
bank_sort_code varchar(16) latin1_swedish_ci select,insert,update,references
bank_iban varchar(64) latin1_swedish_ci select,insert,update,references
bank_account_holder varchar(48) latin1_swedish_ci select,insert,update,references
bank_account_type enum('Checking','Business Checking','Savings') latin1_swedish_ci Checking select,insert,update,references
Manager varchar(50) latin1_swedish_ci select,insert,update,references
managername varchar(75) latin1_swedish_ci select,insert,update,references
prjname varchar(25) latin1_swedish_ci YES (NULL) select,insert,update,references
accountnr varbinary(25) NULL select,insert,update,references
departement varchar(50) latin1_swedish_ci select,insert,update,references
SELECT order_id,
order_status_it,
order_status_manager,
order_status_finance
FROM mos_pshop_orders
WHERE user_id IN (select id FROM mos_users WHERE country = 'NLD' AND departement ='test')
Or you can use left join:
SELECT mos_pshop_orders.order_id,
mos_pshop_orders.order_status_it,
mos_pshop_orders.order_status_manager,
mos_pshop_orders.order_status_finance
FROM mos_pshop_orders, mos_users
WHERE mos_users.user_id = mos_pshop_orders.user_id
AND mos_users.country = 'NLD'
AND mos_users.departement ='test';
Both of them should work fine!
Best regards
Michal Cibor
$query = "SELECT
order_id,
order_status_manager,
order_status_finance,
order_status_it
FROM $table
WHERE order_id NOT IN (select order_id FROM mos_pshop_order_user_info WHERE country='$mycountry' AND department='$department')";
$result = mysql_db_query("$Database",$query) or die ("Error: ".mysql_error());
^ ^