Click here to Skip to main content
Sign Up to vote bad
good
See more: ASP.NETPHP
session_start();
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'fb');
define('DB_PASSWORD', 'fb');
define('DB_DATABASE', 'fb');
$connection = mysql_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD) or die(mysql_error());
$database = mysql_select_db(DB_DATABASE) or die(mysql_error());
 
if ($_GET['action'] == "chatheartbeat") { chatHeartbeat(); }
if ($_GET['action'] == "sendchat") { sendChat(); }
if ($_GET['action'] == "closechat") { closeChat(); }
if ($_GET['action'] == "startchatsession") { startChatSession(); }
if ($_GET['action'] == "chatname") { chatName(); }
 
if (!isset($_SESSION['chatHistory'])) {
    $_SESSION['chatHistory'] = array();
}
 
if (!isset($_SESSION['openChatBoxes'])) {
    $_SESSION['openChatBoxes'] = array();
}
 
function chatHeartbeat() {
    $sql = "select users.username,chat.from,chat.message,chat.to,chat.id,chat.sent,chat.recd from chat,users where (chat.to = '".mysql_real_escape_string($_SESSION['chatuser'])."' AND recd = 0) and chat.from=users.uid order by id ASC";
 
    $query = mysql_query($sql);
    $items = '';
 
    $chatBoxes = array();
 
    while ($chat = mysql_fetch_array($query)) {
 
        if (!isset($_SESSION['openChatBoxes'][$chat['from']]) && isset($_SESSION['chatHistory'][$chat['from']])) {
            $items = $_SESSION['chatHistory'][$chat['from']];
        }
 
        $chat['message'] = sanitize($chat['message']);
 
        $items .= &lt;&lt;<eod>
                       {
            "s": "0",
            "u": "{$chat['username']}",
            "f": "{$chat['from']}",
            "m": "{$chat['message']}"
       },
EOD;
 
    if (!isset($_SESSION['chatHistory'][$chat['from']])) {
        $_SESSION['chatHistory'][$chat['from']] = '';
    }
 
    $_SESSION['chatHistory'][$chat['from']] .= &lt;&lt;<eod>
                           {
            "s": "0",
            "u": "{$chat['username']}",
            "f": "{$chat['from']}",
            "m": "{$chat['message']}"
       },
EOD;
 
        unset($_SESSION['tsChatBoxes'][$chat['from']]);
        $_SESSION['openChatBoxes'][$chat['from']] = $chat['sent'];
    }
 
    if (!empty($_SESSION['openChatBoxes'])) {
    foreach ($_SESSION['openChatBoxes'] as $chatbox =&gt; $time) {
        if (!isset($_SESSION['tsChatBoxes'][$chatbox])) {
            $now = time()-strtotime($time);
            $time = date('g:iA M dS', strtotime($time));
 
            $message = "Sent at $time";
            if ($now &gt; 180) {
                $items .= &lt;&lt;<eod>
{
"s": "2",
"f": "$chatbox",
"m": "{$message}"
},
EOD;
 
    if (!isset($_SESSION['chatHistory'][$chatbox])) {
        $_SESSION['chatHistory'][$chatbox] = '';
    }
 
    $_SESSION['chatHistory'][$chatbox] .= &lt;&lt;<eod>
        {
"s": "2",
"f": "$chatbox",
"m": "{$message}"
},
EOD;
            $_SESSION['tsChatBoxes'][$chatbox] = 1;
        }
        }
    }
}
 
    $sql = "update chat set recd = 1 where chat.to = '".mysql_real_escape_string($_SESSION['chatuser'])."' and recd = 0";
    $query = mysql_query($sql);
 
    if ($items != '') {
        $items = substr($items, 0, -1);
    }
header('Content-type: application/json');
?&gt;
{
        "items": [
            <?php echo $items;??>
        ]
}
 
            exit(0);
}
 
function chatBoxSession($chatbox) {
 
    $items = '';
 
    if (isset($_SESSION['chatHistory'][$chatbox])) {
        $items = $_SESSION['chatHistory'][$chatbox];
    }
 
    return $items;
}
 
function startChatSession() {
    $items = '';
    if (!empty($_SESSION['openChatBoxes'])) {
        foreach ($_SESSION['openChatBoxes'] as $chatbox =&gt; $void) {
            $items .= chatBoxSession($chatbox);
        }
    }
 

    if ($items != '') {
        $items = substr($items, 0, -1);
    }
 
header('Content-type: application/json');
/*
$suser=$_SESSION['chatuser'];
$sc=mysql_query("select username from users where username='$su'");
while($row_sc=mysql_fetch_array($sc))
{
$_SESSION['current_chat_username']=$row_sc['username'];
}*/
?&gt;
{
        "username": "<?php echo $_SESSION['chatuser'];??>",
        "items": [
            <?php echo $items;??>
        ]
}
 
    exit(0);
 
}
 
function chatName() {
    $un = '';
 
$su=$_GET['usw'];
$sc2=mysql_query("select username from users where uid='$su' limit 1");
while($row_sc2=mysql_fetch_array($sc2))
{
$un=$row_sc2["username"];
}
?&gt;
{
        "unm": ["<?php echo $un;??>"]
 
}
 

 
    exit(0);
}
 

 
function sendChat() {
    $from = $_SESSION['chatuser'];
    $to = $_POST['to'];
    $message = $_POST['message'];
    $sql = "select users.username from users where users.uid='$from' limit 1";
    $uname = mysql_query($sql);
    $from_user='';
    while ($un = mysql_fetch_array($uname)) {
    $from_user=$un['username'];
    }
 

    $_SESSION['openChatBoxes'][$_POST['to']] = date('Y-m-d H:i:s', time());
 
    $messagesan = sanitize($message);
 
    if (!isset($_SESSION['chatHistory'][$_POST['to']])) {
        $_SESSION['chatHistory'][$_POST['to']] = '';
    }
 
    $_SESSION['chatHistory'][$_POST['to']] .= &lt;&lt;<eod>
                       {
            "s": "1",
            "u": "{$from_user}",
            "f": "{$to}",
            "m": "{$messagesan}"
       },
EOD;
 

    unset($_SESSION['tsChatBoxes'][$_POST['to']]);
 
    $sql = "insert into chat (chat.from,chat.to,message,sent) values ('".mysql_real_escape_string($from)."', '".mysql_real_escape_string($to)."','".mysql_real_escape_string($message)."',NOW())";
    $query = mysql_query($sql);
    echo "1";
    exit(0);
}
 
function closeChat() {
 
    unset($_SESSION['openChatBoxes'][$_POST['chatbox']]);
 
    echo "1";
    exit(0);
}
 
function sanitize($text) {
    $text = htmlspecialchars($text, ENT_QUOTES);
    $text = str_replace("\n\r","\n",$text);
    $text = str_replace("\r\n","\n",$text);
    $text = str_replace("\n","<br>",$text);
    return $text;
}
 

[edit]Code block added - OriginalGriff[/edit]
Posted 5 Nov '12 - 20:19
Edited 5 Nov '12 - 20:36

Comments
Sergey Alexandrovich Kryukov - 6 Nov '12 - 2:36
What makes you thinking that "conversion" even makes sense? These programming technologies are very different. And you did not even explain what you want to achieve. It does not look a productive approach. If you need to learn ASP.NET, try to do it, ask questions. And ultimately, implement what you need. --SA

2 solutions

No.
We are not here to take your code, convert it (without knowing what it does, or is supposed to do), test it, debug it, and make it work.
 
In other words, do your work for you.
 
Try for yourself. If you get a specific problem, then feel free to come back and ask about it. But we will not do your whole task for you!
  Permalink  
Comments
Muhammd Faris - 6 Nov '12 - 4:11
i want to buid a chat like facebook ...i know only asp.net , when i check i see only php codes.. if you know code for chatting like facebook..please send me the link.
OriginalGriff - 6 Nov '12 - 4:25
Strange - a very quick google gave me this: http://www.codeproject.com/Articles/33817/Build-a-Web-based-Chat-using-ASP-NET-Ajax
!!!!!!!!LOL!!!!!!!
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Your Filters
Interested
Ignored
     
0 OriginalGriff 263
1 Sergey Alexandrovich Kryukov 254
2 Maciej Los 161
3 Tadit Dash 110
4 Richard MacCutchan 95
0 Sergey Alexandrovich Kryukov 10,264
1 OriginalGriff 7,917
2 CPallini 4,181
3 Rohan Leuva 3,522
4 Maciej Los 3,125


Advertise | Privacy | Mobile
Web02 | 2.6.130523.1 | Last Updated 24 Dec 2012
Copyright © CodeProject, 1999-2013
All Rights Reserved. Terms of Use
Layout: fixed | fluid