国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ バックエンド開発 PHPチュートリアル PHP を使用して小規(guī)模サイトの広告管理を?qū)g裝する_PHP チュートリアル

PHP を使用して小規(guī)模サイトの広告管理を?qū)g裝する_PHP チュートリアル

Jul 21, 2016 pm 04:04 PM
php しかし 寫真 成し遂げる 宣伝する モデル 使用 使用 サイト 管理 通信網(wǎng) リンク

イメージ リンク広告はおそらく最も一般的に使用されているオンライン広告モデルですが、複數(shù)の広告を動的かつランダムに表示することはそれほど単純ではありません。 PHP のファイル アップロード機(jī)能は、この 468x60 ピクセル領(lǐng)域 (Web ページ広告の標(biāo)準(zhǔn)サイズ) の重みに基づいて広告をランダムに表示するソリューションを提供するため、FTP プログラムや ASP および Perl CAI 拡張機(jī)能の開発におけるプラグインの必要性を回避できます。この機(jī)能を?qū)g現(xiàn)するために必要です。

この例は、Win9x/2000 用の PHP4+MySQL+Apache でデバッグされました。新しい広告を追加するプログラムである AddNewAd.php3 と、広告を表示するプログラムである ShowAd.php3 の 2 つの部分で構(gòu)成されています。サーバーの PHP ファイル ディレクトリ「test/guanggao/」に保存されます。広告リンク畫像を保存するために、guanggao ディレクトリにサブディレクトリ「adbanner/」を作成します。以下、段階的に分析していきます。

1. まず、MySQL データベースを作成します: guanggao

Windows 環(huán)境では、各データベースは mysql/data/ ディレクトリに存在するサブディレクトリであるため、空の MySQL データベースを作成するのは非常に簡単です。このディレクトリにあります。新しいサブディレクトリ guanggao を作成するだけです。現(xiàn)時點(diǎn)では、データベースにテーブルとデータはありません。

2. 新しい広告プログラムを作成します: AddNewAd.php3

設(shè)計アイデア: 最初にフォームを使用してユーザーの新しい広告情報を取得し、次に PHP 関數(shù) copy() を使用してリンク畫像 (バナー) ファイルをサーバーにアップロードします。 adbanner ディレクトリ; 最後に、作成した MySQL データテーブル広告に畫像ファイル名、広告 URL、説明、重み付け情報などを書き込みます。プログラムコードは以下の通りです:

# AddNewAd.php3——新しい広告を追加#

新しい広告を追加

//フォームは新しい広告情報を入力するために使用され、処理のために次のPHPプログラムに渡されます。
//このうち、重み付けされた優(yōu)先順位の數(shù)値が大きいほど、読み込みページに畫像が表示される確率が高くなります。デフォルトは 1 です。


広告バナー:

広告 Web サイトの URL:

畫像リンクの説明 ALT:

表示の重み付け:




// フォームデータを処理する PHP プログラム
//畫像バナー名とリンクアドレスは使用できません。 empty;
if (( Banner!="") & ( url!="")) {
//広告リンクと畫像名が使用されている場合は、別の名前を選択する必要があります
if (file_exists("adbanner/ ".banner_name)) {
echo "広告畫像。banner_name. が使用されています。別の畫像を選択してください!";
exit;
};
// リンク畫像ファイル名を adbanner ディレクトリにアップロードします;
copy(banner, "adbanner/".banner_name);
//MySQL データベースに接続します;
connection = mysql_connect();
mysql_select_db("guanggao", ); SELECT * FROM ad";
result= mysql_query( query);
//データ テーブル広告が存在しない場合は、次の構(gòu)造に従って新しいデータ テーブル広告を作成します;
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
)") または die(mysql_error ());
}
//フォームから新しいデータを広告テーブルに挿入します
query="insert into ad(url, Banner, alt, priority) names(' url', ' Banner_name', '
alt' , ' priority')";
//挿入が成功した場合、次の情報を表示します;
try=mysql_query( query);
if( try){
echo "広告が追加されました、詳細(xì)情報:
";
echo "
";
echo "広告 URL: url
広告リンクの説明 : alt
表示の重み付け: 優(yōu)先度 ";
}
}

3. ディスプレイ広告プログラムを作成します: ShowAd.php3

アイデア: データベース テーブル內(nèi)のすべての列情報を取得し、対応する 1 次元配列に格納し、すべての広告の重みを加算して最大の亂數(shù)を取得し、ページが更新されるたびに srand() を使用してランダム ツリー シードを生成します。をロードし、rand() 関數(shù)を使用して 1 から最大亂數(shù)までの亂數(shù)を生成し、特定のルールに従って異なる広告バナーをランダムに表示します。 重みが大きいほど、表示される可能性が高くなります。

# ShowAd.php3——隨機(jī)顯示廣告#
//接続選擇データ庫;
connection = mysql_connect();
mysql_select_db("guanggao", connection); //執(zhí)行查詢得廣告條數(shù);
query=" SELECT url, Banner, alt, priority FROM ad where priority > 0";
result=mysql_db_query("guanggao", query);
numrows=mysql_num_rows(result);
// mysql_fetch_object() 関數(shù)を使用して有用な列を取得します情報を?qū)潖辘工肱淞肖烁窦{します。
while( row = mysql_fetch_object(result)) {
adbanner[]= row->banner; alt; I Adpriority [] = row-& gt;
// 中央の変數(shù)を初期化します
i++;プログラムの実行時に 100 萬分の 1 秒ごとに亂數(shù)シードを取得します。
srand((double)microtime()*1000000)
//最大の亂數(shù)の間の亂數(shù)を取得します
pri = rand(1, pricount);
//中間変數(shù)はクリアされます;
pricount=0;
// 広告を表示するために使用される要素は
for( i=0; numrows-1; i++) {
pricount += adpriority[ i];
if ( pri <= pricount) {
ad[]="";
}
}
// ディスプレイ広告のウェイトが大きいほど、表示される機(jī)會が大きくなります;
広告[0]
?>



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

www.bkjia.com

tru??e

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

技術(shù)記事

イメージ リンク広告はおそらく最も一般的に使用されているオンライン広告モデルですが、複數(shù)の広告を動的かつランダムに表示することはそれほど単純ではありません。 PHPのファイルアップロード機(jī)能はこの作品468xで提供されています...

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPで現(xiàn)在のセッションIDを取得する方法は? PHPで現(xiàn)在のセッションIDを取得する方法は? Jul 13, 2025 am 03:02 AM

PHPで現(xiàn)在のセッションIDを取得する方法は、session_id()関數(shù)を使用することですが、session_start()を呼び出して正常に取得する必要があります。 1。Session_start()を呼び出してセッションを開始します。 2。Session_Id()を使用してセッションIDを読み取り、ABC123DEF456GHI789に似た文字列を出力します。 3.返品が空の場合は、Session_start()が欠落しているかどうか、ユーザーが初めてアクセスするか、セッションが破壊されるかを確認(rèn)します。 4.セッションIDは、ロギング、セキュリティ検証、およびクロスレクエスト通信に使用できますが、セキュリティに注意する必要があります。セッションが正しく有効になり、IDが正常に取得できることを確認(rèn)してください。

PHPストリングからサブストリングを取得します PHPストリングからサブストリングを取得します Jul 13, 2025 am 02:59 AM

PHP文字列からサブストリングを抽出するには、Substr()関數(shù)を使用できます。これはSyntax substr(String $ string、int $ start、?int $ length = null)であり、長さが指定されていない場合は、端まで傍受されます。中國語などのマルチバイト文字を処理する場合、MB_Substr()関數(shù)を使用して、文字化けコードを避ける必要があります。特定のセパレーターに従って文字列を傍受する必要がある場合は、exploit()を使用するか、strpos()とsubstr()を組み合わせて、ファイル名拡張子またはドメイン名を抽出するなどの実裝できます。

PHPコードの単體テストをどのように実行しますか? PHPコードの単體テストをどのように実行しますか? Jul 13, 2025 am 02:54 AM

unittestinginphpinvolvevidevifignivision like like fike fikionsionsormethodstocatchsearlyandensureliablerefactoring.1)setupphpunitviacomposer、createatestdirectory、and configureautoloadandphpunit.xml.2)

文字列をPHPの配列に分割する方法 文字列をPHPの配列に分割する方法 Jul 13, 2025 am 02:59 AM

PHPでは、最も一般的な方法は、exploit()関數(shù)を使用して文字列を配列に分割することです。この関數(shù)は、指定された區(qū)切り文字を介して文字列を複數(shù)の部分に分割し、配列を返します。構(gòu)文はエクスプロイト(セパレーター、文字列、制限)であり、セパレーターはセパレーターであり、文字列は元の文字列であり、制限はセグメントの最大數(shù)を制御するオプションのパラメーターです。たとえば、$ str = "Apple、Banana、Orange"; $ arr = Explode( "、"、$ str);結(jié)果は["apple"、 "banaです

JavaScriptデータ型:プリミティブ対參照 JavaScriptデータ型:プリミティブ対參照 Jul 13, 2025 am 02:43 AM

JavaScriptデータ型は、プリミティブタイプと參照タイプに分割されます。プリミティブタイプには、文字列、數(shù)字、ブール、ヌル、未定義、シンボルが含まれます。値は不変であり、コピーは値を割り當(dāng)てるときにコピーされるため、互いに影響を與えません。オブジェクト、配列、関數(shù)などの參照タイプはメモリアドレスを保存し、同じオブジェクトを指す変數(shù)は互いに影響します。 TypeofとInstanceOFを使用してタイプを決定できますが、TypeOfNullの歴史的な問題に注意してください。これらの2種類の違いを理解することは、より安定した信頼性の高いコードを書くのに役立ちます。

c c Jul 15, 2025 am 01:30 AM

STD :: Chronoは、現(xiàn)在の時間の取得、実行時間の測定、操作時點(diǎn)と期間の測定、分析時間のフォーマットなど、時間の処理にCで使用されます。 1。STD:: Chrono :: System_Clock :: now()を使用して、現(xiàn)在の時間を取得します。 2。STD:: CHRONO :: STEADY_CLOCKを使用して実行時間を測定して単調(diào)さを確保し、DurateR_CASTを通じてミリ秒、秒、その他のユニットに変換します。 3。時點(diǎn)(Time_Point)と期間(期間)は相互運(yùn)用可能ですが、ユニットの互換性と時計エポック(エポック)に注意を払う必要があります

PHPで準(zhǔn)備されたステートメントを使用する理由 PHPで準(zhǔn)備されたステートメントを使用する理由 Jul 13, 2025 am 01:52 AM

主にSQLインジェクション攻撃を防ぎ、パフォーマンスを改善し、コードをより明確かつ簡単にデバッグできるようにするために、PHPで準(zhǔn)備されたステートメントを使用します。 1.パラメーター化されたクエリを介したSQLインジェクションを効果的に防止し、ユーザー入力が常にSQLロジックではなくデータとして処理されることを保証します。 2。プリプロセシングステートメントは、複數(shù)回実行時に1回だけコンパイルする必要があり、特にバッチ操作に適した実行効率を大幅に改善する必要があります。 3.パラメーターバインディングは、ポジションと名前付きプレースホルダーをサポートし、SQLとデータを分離し、コードの読みやすさとメンテナンスを強(qiáng)化します。 4.準(zhǔn)備段階で事前にエラーを公開できます。エラーモードを設(shè)定することで例外を均一に処理できます。これにより、迅速にデバッグできます。

PHPは環(huán)境変數(shù)をどのように処理しますか? PHPは環(huán)境変數(shù)をどのように処理しますか? Jul 14, 2025 am 03:01 AM

toaccessenvironmentvariablesinphp、usegetenv()または$ _envsuperglobal.1.getenv( 'var_name')retievessaspecificvariable.2。$ _ en v ['var_name'] AccessESSESESSVARIABLESIFVARIABLES_ORDERINPHP.INIINCLUDES "E" .SETVARIABLESVIACLIWITHVAR = ValuePhpscript.php、inapach

See all articles