Je possède un chat avec des messages automatiques dessus avec 1000ms entre chaque.
Voici un example en live : http://getwebscript.com/fakechatbot/
(Attention au son)
J'aimerais que quand "MESSAGE 2" apparait "MESSAGE 1" disparaît et "MESSAGE 2" prend ça place. Etc avec les prochains messages.
J'ai passé environ 10 heures cumulé sur deux jours à essayer de le faire moi même, j'ai pas réussi..
Voici index.html :
<!DOCTYPE html>
<html>
<head>
<title>Fake Chat Script v2.0</title>
<link href='http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,400,300,600' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="css/chat.css">
<link rel="stylesheet" href="css/jquery.fs.scroller.css">
<script type="text/javascript" src="js/jquery.min.js"></script>
<script src="js/jquery.fs.scroller.js"></script>
<script src="js/moment.js"></script>
<script src="js/livestamp.min.js"></script>
<style>
body,html{margin:0;padding:0;background:#7287a1;font-family:'Open Sans',Arial,sans-serif}
.landing{font-size:72px;text-align:center;margin-top:25%;color:#485666;text-shadow:0 -1px 0 rgba(0,0,0,0.7)}
</style>
<script>
var update_timer = 10; // How many seconds between messages
</script>
</head>
<body>
<h1 class="landing">Live Chat 24/7</h1>
<div id="CX_chatbox" class="cx-offline">
<div id="CX_btn_0" style="color: rgb(255, 255, 255); width: 250px; right: 30px; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; bottom: 0px; padding:10px; background-color:#327CCB;" class="cx-chat-btn cx-online-btn cx-no-ico">
<div class="cx-ico cx-ico-chat" style="display:none"></div>
<div class="cx-ico cx-ico-arrow-up" style="display:block;"></div>
<div class="cx-title" style="display:block;">Chat</div>
</div>
<div id="CX_popup_0" data-id="0" class="cx-widget" style="display: none; width:300px; right:30px;bottom:0;border-radius:4px 4px 0 0; overflow: hidden;">
<div class="cx-">
<div id="CX_popup_header_0" class="cx-header" style="border-radius:4px 4px 0 0;background-color:#327CCB; color:#ffffff;">
<div class="cx-title" style="text-align:left; padding:10px;">
Chat
<div class="cx-ico cx-ico-arrow-down" style="float:right;"></div>
</div>
</div>
<div id="CX_popup_body_0" class="cx-body" style="height: 300px; overflow: hidden;">
<div class="chat_content"></div>
</div>
<div class="chat_input">
<textarea id="omdc" placeholder="Your Message..."></textarea>
</div>
</div>
</div>
<script src="js/chat.js"></script>
<script>openChat();</script>
</body>
</html>
Voici chat_functions.php qui gère tout :
<?php
session_start();
$numofmessages = 9;
$repeatmessages = 0;
$default_messages = array(
"Hi there, I just bought this product and it's awesome!",
"Is it really working or is just a scam?",
"I don't know, let me try...be back in a sec",
"Ok dude, waiting.",
"Hie buddy i am from france",
"Its a great site and awasome product.",
"I am going to buy ,This awasome chat from getwebscript.com",
"Alright, I'm back...it actually works! OMG!",
"This chat is really helpful to increase product sell"
);
function templateMessage($message, $client = 0){
$html = '
<div class="message_a">
<h4 class="name">Anonymous</h4>
<h4 class="ago"><span data-livestamp="'.strtotime(Date("Y-m-d H:i:s")).'"></span></h4>
<div class="message">
'.$message.'
</div>
</div>';
if($client == 0) $_SESSION['messages']['c_' . microtime()] = $html;
else $_SESSION['messages']['u_' . microtime()] = $html;
return $html;
}
function getAllMessages($max, $default_messages){
$html = "";
if(isset($_SESSION['messages'])):
foreach($_SESSION['messages'] as $message_html):
$html .= $message_html;
endforeach;
else:
$html = templateMessage($default_messages[0]);
endif;
return $html;
}
function getMessage($max, $repeat, $default_messages){
$recievedmessages = 0;
$html = "";
if(isset($_SESSION['messages'])):
foreach($_SESSION['messages'] as $message_type => $message_html):
if(strstr($message_type, "c_")) $recievedmessages++;
endforeach;
endif;
if($recievedmessages > $max - 1):
if($repeat == 1):
$html = templateMessage($default_messages[$recievedmessages%$max]);
endif;
else:
$html = templateMessage($default_messages[$recievedmessages]);
endif;
return $html;
}
function sendMessage(){
return templateMessage($_POST['message'], 1);
}
if(isset($_POST['action']))
switch($_POST['action']):
case "getmessages":
echo getAllMessages($numofmessages, $default_messages);
break;
case "getmessage":
echo getMessage($numofmessages, $repeatmessages, $default_messages);
break;
case "sendmessage":
echo sendMessage();
break;
endswitch;
?>