当前位置:首页 » 编程语言 » 站内消息php

站内消息php

发布时间: 2022-06-12 19:47:35

A. php 站内消息怎么实现,小纸条功能,源代码或者思路

主要是 在数据库建表时,一个字段存储 接收者名字,另一个字段存储消息,还一个字段存储发送者,最后设个字段作为标记 是否已经被查看。
做程序的时候 ,信息被发送者插入到数据库之后,一旦接收者登陆,就检测信息是否未读,然后提示有新的站内消息,用户点击打开信息后,查看信息的同时, 更改作为 记录未读的标记为已读。

B. php 怎么做 内部的消息推送呢

?可以用第三方软件极光推送来实现。对于定制化需求较强的,或者想拥有自己推送平台的开发者,极光提供全功能的私有云方案。
极光推送快速开始步骤: 1、到极光推送官方网站注册开发者帐号;
2、登录进入管理控制台,创建应用程序,得到 Appkey(SDK 与服务器端通过 Appkey 互相识别);
3、在推送设置中给 Android 设置包名、给 iOS 上传证书、启用 WinPhone,根据你的需求进行选择;
4、下载 SDK 集成到 App 里。
客户端初始化 JPush 成功后,JPush 服务端会分配一个 Registration ID,作为此设备的标识(同一个手机不同 App 的 Registration ID 是不同的)。开发者可以通过指定具体的 Registration ID 来进行对单一设备的推送。

C. php+mysql 站内信功能怎么设计更合理

这个功能,你可以参考微博的推送思路。

  1. 比如你关注了很多明星(千万级大V),他们发的每条微博会进入到“我的首页”。比如某个明星发了条微博abc,你在“我的首页”里看到的"abc"并不是读自明星微博个人的数据库,而是来自“我的首页”里一个专门的数据集合。

  2. 通俗的讲,这个数据集合是完全属于你个人的,你所关注的每个人,当他们发微博时,会同步“推送”到你自己个人的这个“数据集合”里。

  3. 那么问题来了,千万级大V,每发一条微博,就要同步推给千万个粉丝,生成千万条数据吗?NO,微博根据用户活跃度等一系列算法,将用户分成不同梯队,一批一批的推送,例如一个近30天都没登录过的用户,自然就会被划到较迟推送的那一批里。这样做是为了分流服务器负担。

  4. 但不同产品对于数据设计有不同的思路,你这个公用一条站内信,我的建议是,建个公共站内信统一变量(例如letter=20160514),可以保存到用户的cookies里。

  5. 当用户访问页面时,程序首先将这个变量值和cookies里保存的变量对比,相同则略过,不同则进行读取相应的公共站内信,保存到自己的“收件箱”里。

  6. 这样可以使原本需要同步推给千万用户一条站内信的工作,由主动推送变成被动发送。用户上线访问了,对比、发送,这种工作显然要大大减小了服务器压力。

  7. 读取消息也是,反馈生成一条数据写到数据库里就好了。

D. php站内通知有关问题 怎么实现

数据库实现:
设计如下:
$db['表名']=array (
'columns' =>
array (
'comment_id' =>
array (
'type' => 'number',
'required' => true,
'pkey' => true,
'extra' => 'auto_increment',
'label' => 'ID',
'width' => 110,
'editable' => false,
'default_in_list' => true,
),
'for_comment_id' =>
array (
'type' => 'mediumint(8) ',
'label' => '对m的回复',
'default' => 0,
),
'type_id' =>
array (
'type' => 'table:goods',
'label' => '名称',
'in_list' => true,
'default_in_list' => true,
),
'order_id' =>
array (
'type' => 'table:orders',
'label' => '订单编号',
'in_list' => true,
'default_in_list' => true,
'searchtype' => 'has',
),
'object_type' =>
array (
'type' => 'enum(\'ask\', \'discuss\', \'buy\', \'message\', \'msg\', \'order\')',
'label' => '类型',
'default' => 'ask',
'required' => true,
),
'author_id' =>
array (
'type' => 'mediumint(8)',
'in_list' => false,
'label' => '作者ID',
'default' => 0,
'default_in_list' => false,
),
'author' =>
array (
'type' => 'varchar(100)',
'label' => '发表人',
'searchtype' => 'has',
'filtertype' => 'normal',
'filterdefault' => 'true',
'in_list' => true,
),
'contact' =>
array (
'type' => 'varchar(255)',
'label' => '联系方式',
'width' => 110,
'filtertype' => 'normal',
'filterdefault' => 'true',
'in_list' => true,
),
'mem_read_status' =>
array (
'type' => 'enum(\'false\', \'true\')',
'label' => '会员阅读标识',
'default' => 'false',
),
'adm_read_status' =>
array (
'type' => 'enum(\'false\', \'true\')',
'label' => '管理员阅读标识',
'default' => 'false',
),
'time' =>
array (
'type' => 'time',
'in_list' => true,
'filtertype' => 'normal',
'filterdefault' => 'true',
'label' => '时间',
),
'lastreply' =>
array (
'type' => 'time',
'label' => '最后回复时间',
),
'reply_name' =>
array (
'type' => 'varchar(100)',
'in_list' => true,
'label' => '最后回复人',
'default_in_list' => true,
),
'inbox' =>
array (
'type' => 'bool',
'label' => '收件箱',
'default' => 'true',
),
'track' =>
array (
'type' => 'bool',
'label' => '发件箱',
'default' => 'true',
),
'has_sent' =>
array (
'type' => 'bool',
'label' => '是否发送',
'default' => 'true',
),
'to_id' =>
array (
'type' => 'table:members',
'default' => 0,
'required' => true,
),
'to_uname' =>
array (
'type' => 'varchar(100)',
'default_in_list' => true,
),
'title' =>
array (
'type' => 'varchar(255)',
'in_list' => true,
'label' => '标题',
'is_title' => true,
'searchtype' => 'has',
'filtertype' => 'normal',
'filterdefault' => 'true',
'default_in_list' => true,
),
'comment' =>
array (
'type' => 'longtext',
'label' => '内容',
'in_list' => true,
'searchtype' => 'has',
'filtertype' => 'normal',
'filterdefault' => 'true',
'default_in_list' => true,
),
'ip' =>
array (
'type' => 'varchar(15)',
'in_list' => true,
'label' => 'IP',
'default_in_list' => true,
),
'verify_status'=>
array(
'type' => array(
'0' => '待审核',
'1' => '卖家审核不通过',
'2' => '卖家审核通过',
'3' => '商城审核不通过',
'4' => '商城审核通过',
),
'default' => '0',
'label' => app::get('b2c')->_('审核状态'),
'width' => 100,
'editable' => true,
'in_list' => true,
'default_in_list' => ture,
),
'display' =>
array (
'type' => 'bool',
'in_list' => true,
'label' => '前台是否显示',
'filtertype' => 'bool',
'default' => 'true',
'default_in_list' => true,
),
'gask_type' =>
array (
'type' => 'varchar(50)',
'default' => '',
'editable' => false,
),
'addon' =>
array (
'type' => 'longtext',
'editable' => false,
),
'p_index' =>
array (
'type' => 'tinyint(2)',
'label' => 'p_index',
'default_in_list' => true,
),
'disabled' =>
array (
'type' => 'enum(\'false\', \'true\')',
'default' => 'false',
'default_in_list' => true,
),
'comments_type' =>
array (
'type' =>
array (
0 => '解释',
1 => '评论',
2 => '回复',
3 => '追加',
),
'default' => '0',
'required' => true,
'label' => '评论类型',
'editable' => false,
'in_list' => true,
'default_in_list' => true,
),
'store_id' =>
array (
'type' => 'table:storemanger@business',
'required' => false,
'label' => '店铺名称',
'width' => 110,
'editable' => false,
'in_list' => true,
'default_in_list' => true,
),
),
'comment' => '咨询,评论,留言,短消息表',
'engine' => 'innodb',
'version' => '$Rev$',
'index' =>
array (
'idx_store_id' =>
array (
'columns' =>
array (
0 => 'store_id',
),
),
),
);

E. php站内搜索怎么实现

为什么不建个数据库存储所有页面呢?
就算不用数据库,使用file_get_contents获取所有页面信息,和该页面地址,存进一个数组,实现难度也非常大,而且效率低

F. PHP如何实现网站消息和用户私信即时通讯

如果想要用即时通讯的话有两种方式:
1、用Ajax异步提交与读取消息,每隔一秒刷新一次
2、用php socket进行即时消息的推送与接收。

G. PHP站内信功能怎么设计

情况一:无需实时聊天
这种情况可以采用简单粗暴的方法,数据库直接读写消息记录,已读/未读用一个状态码控制即可,稍微高级一点可以用Redis做消息推送,具体方法不作详细介绍,网络一搜一大把
情况二:实时聊天
沿用以上笨办法,web页面做一个定时器,每隔一段时间请求数据库;当然,Redis也可以轻松办到。如果不嫌麻烦可以采用workerman框架,socket通信专为在线聊天和直播流设计的

H. 怎样使用php设置站内信功能,有什么函数么

这是个功能,不是一个函数能解决的,PHP也不存在这样的功能,需要程序员编写代码开发。
首先要你需要建立一个数据库表,用来存放站内信的相关信息,然后用户使用站内信功能的时候去数据库查询和自己有关的站内信(比如说自己发送的,别人发给你的等等),这属于比较简单的功能开发。

I. php会员中心站内信发送给管理员咋设置

“站内信”不同于电子邮件,电子邮件通过专门的邮件服务器发送、保存。
某一个管理员要给所有人发站内信,则先遍历用户表,再按照用户表中的所有用户依次将站内信插入到Message表中。这样,如果有56个用户,则群发一条站内信要执行56个插入操作。这个理解上比较简单,比较耗损空间。
一:点到点的消息传送。用户给用户发送站内信;管理员给用户发送站内信。
二:点到面的消息传送。管理员给用户(指定满足某一条件的用户群)群发消息。点到点的消息传送很容易实现,本文不再详述。下面将根据不同的情况,来说说“站内信”的群发是如何实现的。

J. PHP网页中站内搜索问题:可以找到我要的相关信息,不是有好多条啊,我点击其中一条查看,再按网页上面返回

因为你列表的页面需要 $_POST['cfd'],而你在详细页面返回时没有传递 $_POST['cfd']该参数,以致无法返回,这种情况下你可以通过设置target=_black在新窗口中打开页面的方式来解决,要是你硬是要按后退键的话,通过设置cookie或者session确实可以达到效果,把$start = $_POST['cfd'];改成
if(isset($_POST['cfd']){
$_SESSION['CFD'] = $_POST['cfd'];
}
$start = $_SESSION['CFD'];

热点内容
怎样删除小视频文件夹 发布:2024-05-19 05:49:29 浏览:589
开启php短标签 发布:2024-05-19 05:44:12 浏览:473
android各国语言 发布:2024-05-19 05:42:54 浏览:247
微信什么资料都没怎么找回密码 发布:2024-05-19 05:35:34 浏览:907
填志愿密码是什么 发布:2024-05-19 05:30:23 浏览:318
城堡争霸自动掠夺脚本 发布:2024-05-19 05:22:06 浏览:204
asp编程工具 发布:2024-05-19 05:20:36 浏览:143
insertpython 发布:2024-05-19 05:12:26 浏览:244
androidant编译 发布:2024-05-19 05:04:11 浏览:988
按键脚本优化 发布:2024-05-19 04:59:57 浏览:752