首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >聊天系统预测动态

聊天系统预测动态
EN

Stack Overflow用户
提问于 2015-02-22 02:38:58
回答 2查看 257关注 0票数 0

我想要做的是一个用户-> Admin Admin \Admin ->用户)聊天系统。到目前为止,我想出来的东西看起来真的很糟糕,我通过SQLfiddle在select上尝试了SQLfiddle,结果不太好。

希望有人有更好的想法,并知道如何解决这个问题。

我的实时聊天PHP代码-> http://pastebin.com/6z9ajCMW

对于live_chatlive_chat_admin的数据库结构,这里是-> http://sqlfiddle.com/#!2/ae70ec/26

想要了解一下我想做什么。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-02-22 03:22:16

在@Eddy Ella的帮助下解决了我的问题。

我首先删除了live_chat_admin,然后将接收器移到live_chat。然后,我使用了用例在id之间从用户切换到admin。

结果和我想要的完全一样。

PHP:http://pastebin.com/GXJEK6u4

SQL:http://sqlfiddle.com/#!2/7081b/5

结果:

票数 0
EN

Stack Overflow用户

发布于 2015-02-22 03:09:26

这就是你要的

您只需要向右和向左对齐您表单中的管理员和用户,就像我在下面的代码中一样

即,

代码语言:javascript
复制
echo '<div align="right">';

并以

代码语言:javascript
复制
echo '</div>';  

代码:

代码语言:javascript
复制
<?php
echo '<div class="live_chat">';
$user = 'root';
$pass = '';
// admin chat
$conn = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sth = $conn->prepare("SELECT * FROM live_chat_admin WHERE receiver = :user_id");
$sth->bindValue(':user_id', '2', PDO::PARAM_INT);
$sth->execute();

    foreach ($sth as $row) {
    // Test message #1
    echo '<div align="right">'; 
    echo '<div class="admin_date">'.date('M j <b\\r/> H:i', strtotime($row['message_date'])).'</div>';
    echo '<div class="admin_bubble">'.$row['message'].'</div>';
    echo '<br /><br />';
    echo '</div>';  
    }
$conn = NULL;

// user chat
#$conn = new PDO('mysql:host='. DB_HOST .';dbname='. DB_NAME . ';charset=utf8', DB_USER, DB_PASS);
#$conn = new PDO('mysql:host=127.0.0.1;dbname=test;charset=utf8', root);
$user = 'root';
$pass = '';
$conn = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sth = $conn->prepare("SELECT * FROM live_chat WHERE user_id = :user_id");
$sth->bindValue(':user_id', '2', PDO::PARAM_INT);
$sth->execute();

    foreach ($sth as $row) {
    // Test message #1
    echo '<div class="user_date">'.date('M j <b\\r/> H:i', strtotime($row['message_date'])).'</div>';
    echo '<div class="user_bubble">'.$row['message'].'</div>';
    echo '<br /><br />';
    }
$conn = NULL;

echo '</div>';

?>

所以你的屏幕就会像你想象的那样

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28653888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档