I have two tables.
Users table
have columns
member_group
equals to
zone
equals to
Meetings table
have columns
for_member_group
for_zone
columns.for_member_group
and for_zone
may contain multiple values with comma separation.
E.g.
for_member_group
= Admin,Salesfor_member_group
= Admin,Marketing,Sales
And same with for_zone
column too.
Now I want to send emails to that particular meeting.
E.g. From Meetings table row 3 with values like for_member_group
= 'Admin,Marketing' and for_zone
='East,West'
Now mail should be sent to Admin and Marketing name containing rows and East and West containing zone names only form Users Table
BUT USER QUERY is not working.... No user selected and no email gets sent...
I also tried echo $userdata['email'];
But nothing echoed...and No Error is seen...
I have tried as follows :
<?php
$qry = "select * from $meetings where meeting_start > $today order by meeting_start desc limit 1";
$results = $database->get_results($qry);
foreach($results as $lecture_data){
$for_member_group = $lecture_data['for_member_group'];
$for_zone = $lecture_data['for_zone'];
$userquery = "select * from $users where member_group IN('$for_member_group') and zone IN('$for_zone') ";
$userresult = $database->get_results($userquery);
foreach ($userresult as $userdata){
echo $userdata['email'];
ob_start();
?>
<!-- EMail HTML and PHP Coding-->
<?php
rest php code
}
}
?>
$for_member_group
seems to be a CSV string. You have to quote all elements to use in IN()
statement. Note that you should test if $for_member_group
and $for_zone
are not empty before to use them.
$mem_quote = "'".implode("','", explode(',', $for_member_group))."'";
$zon_quote = "'".implode("','", explode(',', $for_zone))."'";
// $mem_quote will be equals to 'Admin','Marketing'
$userquery = "select * from $users
where member_group in($mem_quote)
and zone in($zon_quote)";
The query will look like:
select * from $users
where member_group in('Admin','Marketing')
and zone in('East','West')
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments