search
HomeBackend DevelopmentPHP TutorialUse PHP to implement small site advertising management_PHP tutorial

Use PHP to implement small site advertising management_PHP tutorial

Jul 21, 2016 pm 04:04 PM
phpbutpictureaccomplishadvertisemodeluseuseofsitemanagenetworkLink

Image link ads are probably the most commonly used online advertising model, but the dynamic and random display of multiple ads is not that simple. PHP's file upload function provides a solution to randomly display advertisements based on weight in this 468x60 pixel area (the standard size of web page advertisements), thereby avoiding the need for plug-ins in the development of FTP programs or ASP and Perl CAI Extensions are needed to achieve this feature.

This example was debugged and passed under PHP4+MySQL+Apache for Win9x/2000. It consists of two parts: the program AddNewAd.php3 for adding new advertisements and the program ShowAd.php3 for displaying advertisements, both of which are stored on the server. In the "test/guanggao/" directory under the PHP file directory. Create a subdirectory "adbanner/" in the guanggao directory to store advertising link images.Below we analyze step by step.

1. First, create a MySQL database: guanggao

In a Windows environment, it is very simple to create an empty MySQL database, because each database exists in the mysql/data/ directory. subdirectory, so just create a new subdirectory guanggao in this directory. At this time, there are no tables and data in the database.

2. Create a new advertising program: AddNewAd.php3

Design idea: first use a form to get the user’s new advertising information; then use the PHP function copy() to copy the linked image (banner) The file is uploaded to the adbanner directory of the server; finally, the image file name, advertising URL, description, weighted information, etc. are written into the created MySQL data table ad. The program code is as follows:

 # AddNewAd.php3——Add new advertisement#

Add new advertisement

//The form is used to enter new advertisement information and submit Process it for the PHP program below;
//Among them, the larger the weighted value priority number, the higher the probability of the image appearing on the loading page. The default is 1.


Advertising Banner:

Advertising URL:

Image link description ALT:

Display weighting:




//PHP program that processes form data;
//The image banner name and link address cannot be empty;
if (( banner!="") & ( url!="") ) {
//If the advertising link and image name have been used, you must choose another one;
if (file_exists("adbanner/". banner_name)) {
echo "Advertising image. banner_name. has been used , please choose another one! ";
exit;
};
//Upload the link image file name to the adbanner directory;
copy(banner,"adbanner/". banner_name);
/ /Connect to the MySQL database;
connection = mysql_connect();
//Select the data source guanggao and execute the query;;
mysql_select_db("guanggao", );
query="SELECT * FROM ad" ;
result=mysql_query( query);
//If the data table ad does not exist, create a new data table ad according to the following structure;
if(!result){
mysql_query("
create table ad(
url varchar(100) not null,
banner varchar(150) not null,
alt varchar(100) null,
priority tinyint(4) default '1' not null
)") or die(mysql_error());
}
//Insert new data from the form into the data table ad;
query="insert into ad(url, banner , alt, priority) values(' url', ' banner_name', '
alt', ' priority')";
//If the insertion is successful, the following information will be displayed;
try=mysql_query( query);
if(try){
echo "An advertisement has been added, detailed information:
";
echo "
";
echo "Advertisement URL: url
advertisement Link description: alt
Display weighting: priority ";
}
}
?>

3. Create a display advertising program: ShowAd.php3

Design Idea: Get all column information in the database table and store them in corresponding one-dimensional arrays. Add the weights of all advertisements to get a maximum random number. Use srand() to generate a random tree seed each time the page is loaded, and then Use the rand() function to generate a random number between 1 and the maximum random number, and then randomly display different advertising banners according to certain rules. The greater the weight, the greater the chance of being displayed.

# ShowAd.php3——Display ads randomly#
//Connect to select database;
connection = mysql_connect();
mysql_select_db("guanggao", connection);
/ /Execute the query to get the number of ads;
query="SELECT url, banner, alt, priority FROM ad where priority > 0";
result=mysql_db_query("guanggao", query);
numrows= mysql_num_rows( result);
//Use the mysql_fetch_object() function to obtain useful column information and store it in the corresponding array;
while( row = mysql_fetch_object( result)) {
adurl[]= row-> url; Initialize intermediate variables;
numcheck= numrows;
i= pricount=0;
//Get the maximum random number;
while(numcheck) {
pricount+= adpriority[ i];
i++; numcheck--;
}
//Generate a random number seed every one millionth of a second when the program is executed;
srand((double)microtime()*1000000);
/ /Get a random number between 1 and the maximum random number;
pri = rand(1, pricount);
//Clear the intermediate variables to zero;
pricount=0;
//According to weighting If the values ​​are different, an array whose elements are strings used to display advertisements is generated;
for( i=0; i pricount += adpriority[ i];
if ( pri ad[]="";
}
}
//Display ads, the greater the weight, the greater the chance of display;
echo ad[ 0];
?>



http://www.bkjia.com/PHPjc/315834.html

www.bkjia.com

truehttp: //www.bkjia.com/PHPjc/315834.htmlTechArticleImage link ads are probably the most commonly used online advertising model, but the dynamic random display of multiple ads is not that simple. things. PHP's file upload function is provided in this 468x...
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Explain how load balancing affects session management and how to address it.Explain how load balancing affects session management and how to address it.Apr 29, 2025 am 12:42 AM

Load balancing affects session management, but can be resolved with session replication, session stickiness, and centralized session storage. 1. Session Replication Copy session data between servers. 2. Session stickiness directs user requests to the same server. 3. Centralized session storage uses independent servers such as Redis to store session data to ensure data sharing.

Explain the concept of session locking.Explain the concept of session locking.Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

Are there any alternatives to PHP sessions?Are there any alternatives to PHP sessions?Apr 29, 2025 am 12:36 AM

Alternatives to PHP sessions include Cookies, Token-based Authentication, Database-based Sessions, and Redis/Memcached. 1.Cookies manage sessions by storing data on the client, which is simple but low in security. 2.Token-based Authentication uses tokens to verify users, which is highly secure but requires additional logic. 3.Database-basedSessions stores data in the database, which has good scalability but may affect performance. 4. Redis/Memcached uses distributed cache to improve performance and scalability, but requires additional matching

Define the term 'session hijacking' in the context of PHP.Define the term 'session hijacking' in the context of PHP.Apr 29, 2025 am 12:33 AM

Sessionhijacking refers to an attacker impersonating a user by obtaining the user's sessionID. Prevention methods include: 1) encrypting communication using HTTPS; 2) verifying the source of the sessionID; 3) using a secure sessionID generation algorithm; 4) regularly updating the sessionID.

What is the full form of PHP?What is the full form of PHP?Apr 28, 2025 pm 04:58 PM

The article discusses PHP, detailing its full form, main uses in web development, comparison with Python and Java, and its ease of learning for beginners.

How does PHP handle form data?How does PHP handle form data?Apr 28, 2025 pm 04:57 PM

PHP handles form data using $\_POST and $\_GET superglobals, with security ensured through validation, sanitization, and secure database interactions.

What is the difference between PHP and ASP.NET?What is the difference between PHP and ASP.NET?Apr 28, 2025 pm 04:56 PM

The article compares PHP and ASP.NET, focusing on their suitability for large-scale web applications, performance differences, and security features. Both are viable for large projects, but PHP is open-source and platform-independent, while ASP.NET,

Is PHP a case-sensitive language?Is PHP a case-sensitive language?Apr 28, 2025 pm 04:55 PM

PHP's case sensitivity varies: functions are insensitive, while variables and classes are sensitive. Best practices include consistent naming and using case-insensitive functions for comparisons.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools