PHP Tutorial.Application Example 18_PHP Tutorial
PHP-based chat room (3)
Now we have files that need to be cross-referenced through the $REMOTE_ADDR variable, so that we can distinguish whether the user who wants to post has been banned or not. Very simple:
for ($counter=0;$counter
print("".
"You have been banned from this chat");
exit;
}
}
?>
exit command Will stop execution of the script immediately. Before starting processing of the passed variables, insert a check for the blocked user so that the blocked user cannot use the chat room.
A better way to solve the problem of dynamic IP addresses in some cases is to check the range of the IP address block. A simple function can easily implement it.
function makeMask($ip) {
// remember to escape the . so PHP doesn't think its a concatenation
$ip_array = explode(".", $ip);
$ip_mask = "$ip_array[0].$ip_array[1].$ip_array[2]";
return $ip_mask;
}
?>
Then we put the if replaced with
for ($counter=0;$counter
if (makeMask($REMOTE_ADDR) = = makeMask($banned_array[$counter])) {
print("".
"You have been banned from this chat");
exit;
}
}
?>
We have protection against dynamic IP addresses
Finally we need a way to get the IP in trouble first. My implementation is to record $name and $REMOTE_ADDR. to a file called
iplist.html. For a separate, secret URL, I can monitor the IP address while browsing the messages. This has the added benefit of being able to detect impersonators - The most common "crimes" committed in these places. The creation methods of iplist.html and messages.html are basically the same. First, take the current value out of iplist.html, and we peel off the header information, headers and old ones. IP record, then create a new record, new header information, new footer. To make the layout clearer, I use a table.
$header = " "; $footer = "
"; $new_ip = "$name$REMOTE_ADDR ";
$ip_array = file("iplist.html");
for ( $counter = 1; $counter $old_ips.= $ip_array[$counter]; ?>
Simply write the contents to disk as we did for the message file , so that we have a web chat room. Has better cross-platform compatibility than Java, and requires nothing more than a web browser - I've heard even the Dreamcast works this way!
There are a few things you might want to try doing yourself, including merging some common code snippets into functions, writing a script that automatically adds troublemakers to the target list, and writing a regex expression that scans for messages. URLs and e-mails in the text and automatically convert them into links (like Outlook Express and ICQ do).

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

To work on file upload we are going to use the form helper. Here, is an example for file upload.

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

Validator can be created by adding the following two lines in the controller.

Logging in CakePHP is a very easy task. You just have to use one function. You can log errors, exceptions, user activities, action taken by users, for any background process like cronjob. Logging data in CakePHP is easy. The log() function is provide

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

This chapter deals with the information about the authentication process available in CakePHP.
