[分享] 《魔镜在线》一个在线随机聊天网站源码,该如何处理
[分享] 《魔镜在线》一个在线随机聊天网站源码
程序使用PHP+MySQL,jQuery实现Ajax,页面布局用的DIV+CSS,并有一个VB写的客户端程序。
原演示地址:http://ask.n9sky.com/MagicMirror/ (现在不能访问了)
现在贴出部分代码:
server.php 主要的操作处理都在这个文件
- PHP code
<br> <?php <br /> $do = @$_GET['do']; <br> if ('' == $do) <br> { <br> exit('Missing Action'); <br> } <br> require 'config.php'; <br> require 'dll.php'; <br> session_start(); <br> // check session <br> if ('' == $_SESSION['sid']) exit('登录超时,请关闭重试!'); <br> switch ($do) <br> { <br> case 'init': <br> // check user && update <br> dll::import('mysql'); <br> $db = new mysql(); <br> $db->connect($dbs['server'], $dbs['user'], $dbs['password']); <br> $db->database($dbs['database']); <br> // update <br> $rs = $db->update(DBPrefix.'user', 'sid="'.$_SESSION['sid'].'"'); <br> $rs->set('client_to', ''); <br> $rs->set('role', RoleOnline); <br> $rs->set('last_access_time', time()); <br> $rs->setfunc('login_count', 'login_count+1'); <br> $rs->set('last_login_time', time()); <br> $ip = $_SERVER['REMOTE_ADDR']; <br> $ipx = explode('.', $ip); <br> $iplong = <br> $ipx[0] * 16777216 + <br> $ipx[1] * 65536 + <br> $ipx[2] * 256 + <br> $ipx[3]; <br> $rs->set('last_login_ip', $iplong); <br> if (!$rs->update()) <br> { <br> // add new <br> $rs = $db->insert(DBPrefix.'user'); <br> $rs->set('sid', $_SESSION['sid']); <br> $rs->set('client_to', ''); <br> $rs->set('role', RoleOnline); <br> $rs->set('last_access_time', time()); <br> $rs->set('login_count', 1); <br> $rs->set('last_login_time', time()); <br> $rs->set('last_login_ip', $iplong); <br> $rs->insert(); <br> } <br> $db->close(); <br> // display init page <br> display('init.html'); <br> break; <br> case 'status': <br> dll::import('mysql'); <br> // access $dbs <br> global $dbs; <br> $db = new mysql(); <br> $db->connect($dbs['server'], $dbs['user'], $dbs['password']); <br> $db->database($dbs['database']); <br> // update access <br> update_access($db); <br> // import mysql.class <br> display('server.status.html'); <br> $db->close(); <br> break; <br> case 'work': <br> $mode = $_GET['mode']; <br> // update work mode <br> dll::import('mysql'); <br> $db = new mysql(); <br> $db->connect($dbs['server'], $dbs['user'], $dbs['password']); <br> $db->database($dbs['database']); <br> // update <br> $rs = $db->update(DBPrefix.'user', 'sid="'.$_SESSION['sid'].'"'); <br> switch ($mode) <br> { <br> case 'answer': <br> $rs->set('role', RoleAnswer); <br> break; <br> case 'asker': <br> $rs->set('role', RoleAsker); <br> break; <br> case 'chater': <br> $rs->set('role', RoleChater); <br> break; <br> case 'offline': <br> $rs->set('role', RoleOffline); <br> $rs->set('client_to', ''); <br> // delete input status cache <br> @unlink(dirname('.').'/cache/'.$_SESSION['sid'].'.input.status'); <br> // clear session <br> unset($_SESSION); <br> break; <br> } <br> $rs->set('last_access_time', time()); <br> $rs->update(); <br> $db->close(); <br> // display mode page <br> if ($mode != 'offline') <br> {<div class="clear"> </div>

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

許多用戶在選擇智慧型手錶的時候都會選擇的華為的品牌,其中華為GT3pro和GT4都是非常熱門的選擇,不少用戶都很好奇華為GT3pro和GT4有什麼區別,下面就給大家介紹一下二者。華為GT3pro和GT4有什麼差別一、外觀GT4:46mm和41mm,材質是玻璃鏡板+不鏽鋼機身+高分纖維後殼。 GT3pro:46.6mm和42.9mm,材質是藍寶石玻璃鏡+鈦金屬機身/陶瓷機身+陶瓷後殼二、健康GT4:採用最新的華為Truseen5.5+演算法,結果會更加的精準。 GT3pro:多了ECG心電圖和血管及安

MyBatis動態SQL標籤解讀:Set標籤用法詳解MyBatis是一個優秀的持久層框架,它提供了豐富的動態SQL標籤,可以靈活地建構資料庫操作語句。其中,Set標籤是用來產生UPDATE語句中SET子句的標籤,在更新作業中非常常用。本文將詳細解讀MyBatis中Set標籤的用法,以及透過具體的程式碼範例來示範其功能。什麼是Set標籤Set標籤用於MyBati

session失效通常是由於 session 的生存時間過期或伺服器關閉導致的。其解決方法:1、延長session的生存時間;2、使用持久化儲存;3、使用cookie;4、非同步更新session;5、使用會話管理中介軟體。

PHPSession跨域問題的解決方法在前後端分離的開發中,跨域請求已成為常態。在處理跨域問題時,我們通常會涉及session的使用和管理。然而,由於瀏覽器的同源策略限制,跨域情況下預設無法共享session。為了解決這個問題,我們需要採用一些技巧和方法來實現session的跨域共享。一、使用cookie跨域共享session最常

1.基於session實作簡訊登入1.1簡訊登入流程圖1.2實作發送簡訊驗證碼前端請求說明:說明請求方式POST請求路徑/user/code請求參數phone(電話號碼)回傳值無後端介面實作:@Slf4j@ ServicepublicclassUserServiceImplextendsServiceImplimplementsIUserService{@OverridepublicResultsendCode(Stringphone,HttpSessionsession){//1.校驗手機號碼if

為什麼截圖工具在Windows11上不起作用了解問題的根本原因有助於找到正確的解決方案。以下是截圖工具可能無法正常工作的主要原因:對焦助手已開啟:這可以防止截圖工具開啟。應用程式損壞:如果截圖工具在啟動時崩潰,則可能已損壞。過時的圖形驅動程式:不相容的驅動程式可能會幹擾截圖工具。來自其他應用程式的干擾:其他正在運行的應用程式可能與截圖工具衝突。憑證已過期:升級過程中的錯誤可能會導致此issu簡單的解決方案這些適合大多數用戶,不需要任何特殊的技術知識。 1.更新視窗與Microsoft應用程式商店應用程

JavaScriptCookie使用JavaScriptcookie是記住和追蹤偏好、購買、佣金和其他資訊的最有效方法。更好的訪客體驗或網站統計所需的資訊。 PHPCookieCookie是儲存在客戶端電腦上的文字檔案並保留它們用於追蹤目的。 PHP透明地支援HTTPcookie。 JavaScriptcookie如何運作?您的伺服器將一些資料傳送到訪客的瀏覽器cookie的形式。瀏覽器可以接受cookie。如果存在,它將作為純文字記錄儲存在訪客的硬碟上。現在,當訪客到達網站上的另一個頁面時

經過多次預發布後,KDE Plasma 開發團隊於 2 月 28 日推出了適用於 Linux 和 BSD 系統的 6.0 版桌面環境,首次使用 Qt6 框架。 KDE Plasma 6.1 現在附帶了許多新功能
