Ресурсы для создания чата с помощью PHP - PullRequest
1 голос
/ 04 января 2011

Я собираюсь разработать простой чат-сайт, чтобы помочь моему другу, которому нужна функция поддержки чата, и потому что мне нравится проверять свои знания PHP, но сначала мне нужны некоторые ресурсы, с которых я могу начать.Я хочу начать с чего-то очень очень очень простого, затем я начинаю улучшать его (как я обычно люблю делать вещи).

Так можете ли вы поделиться некоторыми ресурсами, которые мне понадобятся для этого?Как примеры, сниппет и документы?

PS: я не так хорош с Javascript, как и AJAX

1 Ответ

0 голосов
/ 05 января 2011

Поскольку вы запросили очень, очень, очень, простое решение, вот полный рабочий пример.

С уважением,

// т

<?
//chat.php
//collect input from user
if($_SERVER['REQUEST_METHOD'] == 'POST') {
  //submitted by form - add to conversation...
  //get conversation from file in server to array..
  if (!file_exists('conversation.txt'))
    file_put_contents('conversation.txt',serialize(array()));
  $a = unserialize(file_get_contents('conversation.txt'));
  //add the new entry to the conversation
  $a[] = array(
    'user' => $_POST['user'],
    'line' => $_POST['line']
  );
  //if conv. > 20 msg, crop
  if (sizeof($a)>20) $a = array_split($a, sizeof($a)-20);
  //now save..
  file_put_contents('conversation.txt',serialize($a)); 
  //and we're done with logic..
}
//from here, only presentation..
?>
<html>
<body>
...
<?php
//show conv...
$a = unserialize(file_get_contents('conversation.txt'));    
for($i=0;$i<sizeof($a);$i++) {
  echo $a[$i]['user'] . ':' . $a[$i]['line'] . '<br />';
}
?>
//build a form to submit line...
<form name="frm1" method="post" action="chat.php">
  <input type="text" name="user" />
  <input type="text" name="line" size="60" />
  <input type="submit"/>
</form>
<!-- add js that reloads as long as no entry in line... !-->
<script type="text/javascript">
function getChat() {
  if (document.frm1.line.value.length == 0) {
    //alert('reloading');
    location.reload(true);
  }
}
//add a simple js-timer to fire every 8 sec.
setInterval('getChat()',8000);
</script>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...