function findAllDestinationUserId($con, $groupid, $msgid) { $result = array(); $allgroupid = findallchild($groupid, $con); $tempuserid = array(); foreach ($allgroupid as $eachgroupid) { //loop เอาค่าแต่ละตัวในอาเรย์ allgroupid $sqlgetalluserid = "SELECT `has_user`.`user_id` FROM `has_user`\n WHERE `has_user`.`group_id` = '{$eachgroupid}'\n AND `has_user`.`role_id` != '0'"; $queryallId = $con->query($sqlgetalluserid); if ($queryallId->num_rows > 0) { //ใส่ userid ทั้งหมดลงใน $tempuserid while ($roo = $queryallId->fetch_assoc()) { array_push($tempuserid, $roo['user_id']); } $pathmsg = findparentpath($eachgroupid, $con); foreach ($tempuserid as $eachuserid) { $sqlinserthasmessage = "INSERT INTO `workingalert`.`has_message`\n (`message_id` ,`user_id` ,`group_id`,`pathmsg`)\n VALUES ('{$msgid}', '{$eachuserid}', '{$eachgroupid}', '{$pathmsg}');"; if ($con->query($sqlinserthasmessage) === TRUE) { //insert ลงตารางสำเร็จก็เก็บ user id ไว้ push array_push($result, $eachuserid); } } } } return $result; }
<?php include "dbconnect.php"; function findparentpath($groupid, $con) { $path = ""; $parent = 0; do { $queryparent = $con->query("SELECT `parent_id`,`group_name` FROM `group` WHERE `group_id` ='{$groupid}';"); $parentdata = $queryparent->fetch_assoc(); $parent = $parentdata['parent_id']; $groupid = $parent; $path = $parentdata['group_name'] . ' -> ' . $path; } while ($parent != 0); return substr($path, 0, -3); } echo findparentpath(5, $con);
if ($querygroup->num_rows > 0) { //found group while ($groupdata = $querygroup->fetch_assoc()) { $path = findparentpath($groupdata["group_id"], $con); $unread = countunreadmsg($groupdata["group_id"], $userid, $con); $groupdetail = array("id" => $groupdata["group_id"], "name" => $groupdata["group_name"], "description" => $groupdata["description"], "pict" => $groupdata["icon"], "role" => $groupdata["role_id"], "path" => $path, "unreadmsg" => $unread); array_push($group, $groupdetail); } //$response = array("status"=>"success","description"=>"","group"=>$group); } //else{ //$response = array("status"=>"success","description"=>"not found group","group"=>"notfound","toconfirmgroup"=>$toconfirmgroup); //} //echo 'eiei '.$userid.' eiei'; $querytoconfirmgroup = $con->query("SELECT * FROM `has_user`\n JOIN `group` ON `group`.`group_id`=`has_user`.`group_id`\n WHERE `role_id` = '5' AND `has_user`.`user_id` = '{$userid}';"); if ($querytoconfirmgroup->num_rows > 0) { while ($row = $querytoconfirmgroup->fetch_assoc()) { $unread2 = countunreadmsg($row["group_id"], $userid, $con); $path2 = findparentpath($row["group_id"], $con); $toconfirmgroupdetail = array("id" => $row["group_id"], "name" => $row["group_name"], "description" => $row["description"], "role" => $row["role_id"], "path" => $path2, "unreadmsg" => $unread2); array_push($toconfirmgroup, $toconfirmgroupdetail); } $response = array("status" => "success", "description" => "", "group" => $group, "toconfirmgroup" => $toconfirmgroup); } else { $response = array("status" => "success", "description" => "", "group" => $group, "toconfirmgroup" => "empty"); } } else { //not found user_id $response = array("status" => "failed", "description" => "not found user_id"); } echo json_encode($response);
} //check groupid ถ้ายังเหมือนเดิมอยู่ให้ add id กับ path เข้า $groupid if ($msgdata["message_id"] == $checkmsgid) { $groupiddetail = array("id" => $msgdata["group_id"], "path" => findparentpath($msgdata["group_id"], $con), "pict" => getgrouppict($con, $msgdata["group_id"])); array_push($grouppath, $groupiddetail); } else { //add element เข้า $msgdetail $msgdetail = array("id" => $id_db, "grouppath" => $grouppath, "body" => $body_db, "priority" => $priority_db, "fromid" => $fromid_db, "pict" => $pict, "formname" => $fromname, "read" => $read_db, "reach" => $reach_db, "date" => $c_date, "time" => $c_time); array_push($msg, $msgdetail); $grouppath = array(); //ย้าย id ใหม่ใส่ $checkmsgid $checkmsgid = $msgdata["message_id"]; //เคลียค่า $groupid $groupid = array(); //หา path ใส่ $groupid $path = findparentpath($msgdata["group_id"], $con); $pixx = getgrouppict($con, $msgdata["group_id"]); $groupiddetail = array("id" => $msgdata["group_id"], "path" => $path, "pict" => $pixx); array_push($grouppath, $groupiddetail); //get all rows from db to ตัวแปรใน php $id_db = $msgdata["message_id"]; $body_db = $msgdata["message_body"]; $priority_db = $msgdata["priority"]; $fromid_db = $msgdata["from_user_id"]; $fromname = $sendernamedata["name"]; $pict = $sendernamedata["picture"]; $read_db = $msgdata["read_status"]; $reach_db = $msgdata["reach_status"]; $c_date = $msgdata["create_date"]; $c_time = $msgdata["create_time"]; }