當前位置:首頁 » 編程語言 » 站內消息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-06 01:39:20 瀏覽:447
刷演算法的網站 發布:2024-05-06 01:30:39 瀏覽:269
少兒編程徐州 發布:2024-05-06 01:20:42 瀏覽:462
sqlserver連接驅動 發布:2024-05-06 00:33:34 瀏覽:646
存儲開銷 發布:2024-05-06 00:13:38 瀏覽:954
伺服器怎麼盈利 發布:2024-05-05 23:56:16 瀏覽:942
java網站培訓學校 發布:2024-05-05 23:43:11 瀏覽:41
淘寶搜索演算法 發布:2024-05-05 23:37:07 瀏覽:999
sqlwhencasethen 發布:2024-05-05 23:27:51 瀏覽:641
模架編程軟體 發布:2024-05-05 23:26:54 瀏覽:483