Я запрограммировал простой чат в чате между двумя пользователями, но проблема в том, что каждый может видеть разговор, как и все пользователи в тех же комнатах, но я хочу, чтобы разговор был только между двумя пользователями, такими как Facebook. это захват для моего сценария.
весь мой код контроллера:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Chat extends CI_Controller {
Public function __construct() {
parent::__construct();
$this->load->model('chats');
$this->load->model('regis');
}
public function index() {
}
public function send() {
date_default_timezone_set('Asia/Jakarta');
$date = date('Y-m-d H:i:s');
$message = array(
'sender' => $this->session->userdata('user'),
'time' => $date,
'text' => $this->input->post('message')
);
$this->db->insert('chat', $message);
redirect (base_url('chat'));
}
public function open() {
return $this->chats->main(array('status'=>TRUE));
}
public function maintenance() { return $this->chats->main(array('status'=>FALSE)); }
public function pending() {
if ($this->session->userdata('sesi') == FALSE) {
$this->session->set_flashdata('login', 'You Must Login!');
redirect(base_url());
} else {
$data['orang'] = $this->regis->orang();
$data['status'] = $this->chats->get_stats()->result();
$this->load->view('header');
$this->load->view('pending', $data);
$this->load->view('footer');
}
}
}
мои модели:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Chats extends CI_Model {
public function __construct() { $this->load->database(); }
public function isi_chat(){ return $this->db->select('*')->order_by('time','ASC')->get('chat'); }
public function main($status) {
$this->db->update('status', $status);
redirect(base_url('chat'));
}
public function get_stats() { return $this->db->get('status'); }
}
мой взгляд:
<div class="container">
<div class="row">
<div class="col-md-6 col-md-offset-3">
<br><br><br>
<?= $this->session->flashdata('done'); ?>
<div class="panel panel-default">
<?php foreach($status as $s): ?>
<div class="panel-heading">
<strong><?= $this->session->userdata('nama'); ?></strong>
<a href="<?= base_url('auth/logout') ?>" class="btn btn-danger btn-xs pull-right">Exit</a>
<?php
if ($this->session->userdata('akses') == 'ADMIN') {
echo "<a href=".base_url('chat/pending')." class=\"btn btn-primary btn-xs\" title=\"Users Need Approval\"><i class=\"glyphicon glyphicon-user\"></i> User Pending</a>";
if($s->status == TRUE) {
echo "<a href=".base_url('chat/maintenance')." class=\"btn btn-warning btn-xs\" title=\"Disable Chat\"><i class=\"glyphicon glyphicon-lock\"></i> Maintenance</a>";
} else {
echo "<a href=".base_url('chat/open')." class=\"btn btn-success btn-xs\" title=\"Enable Chat\"><i class=\"glyphicon glyphicon-ok\"></i> Buka Chat</a>";
}
}
?>
</div>
<?php endforeach ?>
<?php if ($s->status == TRUE): ?>
<div class="panel-body" style="height: 300px; overflow-y: scroll">
<?php foreach ($chat as $c){ ?>
<?php if($c->sender == $this->session->userdata('user')){ ?>
<div class="col-md-12">
<div class="panel panel-success panel-comment pull-right">
<div class="panel-heading" >
<strong style="opacity: .5; font-size: 12px; color: #4BD239">ME : </strong>
<small><?php echo date("d-M-Y H:i:s", strtotime($c->time)); ?></small><br/>
<?= $c->text ?>
</div>
</div>
</div>
<?php } else { ?>
<div class="col-md-12">
<div class="panel panel-warning panel-comment pull-left">
<div class="panel-heading" >
<strong style="opacity: .5; font-size: 12px; color: #DCD15B"><?= $c->sender ?>:</strong>
<small><?php echo date("d-M-Y H:i:s", strtotime($c->time)); ?></small><br/>
<?= $c->text ?>
</div>
</div>
</div>
<?php } ?>
<?php } ?>
</div>
<?php endif ?>
<?php if ($s->status == FALSE): ?>
<div class="panel-body">
<h4 class="text-center" style="color: #FF0000">SORRY<br> MAINTENANCE<br><br></h4>
</div>
<?php endif ?>
</div>
<?php if ($s->status == TRUE): ?>
<div class="row">
<div class="col-md-12 ">
<form method="post" action="chat/send">
<div class="col-md-12">
<div class="input-group">
<input type="text" name="message" class="form-control" placeholder="Masukan Teks">
<span class="input-group-btn">
<input class="btn btn-success" type="submit" value="Send">
</span>
</div>
</div>
</form>
</div>
</div>
<?php endif ?>
</div>
</div>
</div>
теперь проблема в том, что я хочу приватный разговор между двумя пользователями! Может ли кто-нибудь помочь мне, пожалуйста, потому что более 5 дней я пытаюсь решить эту проблему без какого-либо результата. спасибо