ホームページ php教程 php手册 register_globals の詳細 (register_globals=off を使用すると、Web サイトを開けない問題が解決されます)

register_globals の詳細 (register_globals=off を使用すると、Web サイトを開けない問題が解決されます)

Jun 13, 2016 pm 12:00 PM
学ぶ ビート 方法 深く行く Webサイト 解決する

register_globals を深く理解する

dedecms ではregister_globals が強制的に制限されています

register_globals 設定は PHP 変数のアクセス範囲を制御するため、オンにすると不要なセキュリティ上の問題が発生するため、ウェブマスターのスペースがサポートしていない場合は、ここで強制的にオフになります。参考のために次の方法を使用して変更できます:

* スタンドアロンサーバーユーザーの場合は、php.ini を変更できます。 PHP 設定ファイルで register_globals=On を設定し、 register_globals=Off に変更して、Apache を再起動します。

* 仮想ホスト ユーザーの場合は、設定を変更できるようにスペース プロバイダーに通知してください。または、ini_set('register_globals',0) を試すこともできます。

* Web サイトのディレクトリに新しい .htaccess ファイルを作成し、php_flag register_globals を追加します。既に .htaccess ファイルがある場合は、それを追加します。

* これが機能しない場合、唯一の最後の手段は、include/common.inc.php に直接アクセスして、次のコードを削除することです (推奨されません)。 🎜>// register_globals を有効にすると多くの危険な可能性があるため、 register_globals を強制的にオフにしてください if(ini_get('register_globals')){ exit('php.ini register_globals must be Off! '); } PHP4.2.0 バージョン以降、php.ini の register_globals 設定オプションのデフォルト値が off になります。したがって、今すぐ Off スタイルでプログラミングを始めるのが最善です。
register_globals の値は次のように設定できます: On または Off それぞれの違いを説明するコードを示します。

コード:



コードをコピー コードは次のとおりです:

<フォーム名="frmTest " id="frmTest" action="URL">







when register_globals= Off の場合、次のプログラムは $_GET['user_name'] と $_GET['user_pass'] を使用して、渡された値を受け入れる必要があります。 (注:

のメソッド属性が post の場合、$_POST['user_name'] と $_POST['user_pass'] を使用する必要があります)


register_globals=On の場合、次のプログラムは使用できます。 $user_name と $user_pass は値を直接受け入れます。

register_globals はその名の通り、グローバル変数として登録するという意味なので、On の場合は渡された値が直接グローバル変数として登録されてそのまま使用され、Off の場合は、特定の配列に移動して取得します。したがって、値を取得できないという上記の問題に遭遇した友人は、まず register_globals 設定が値を取得する方法と一致しているかどうかを確認する必要があります。 (確認するには、phpinfo() 関数を使用するか、php.ini を直接確認できます) ここで何が問題なのか見てみましょう。

次の PHP スクリプトを見てください。このスクリプトは、入力されたユーザー名とパスワードが正しい場合に Web ページへのアクセスを承認するために使用されます:



コードをコピー

コードは次のとおりです: // ユーザー名とパスワードを確認します

if ($username == 'kevin' and $password == 'secret' )
$authorized = true;
?>




上記のコードの問題は、正しいユーザー名とパスワードを入力しなくても簡単にアクセスできることです。ブラウザのアドレスバーの最後に ?authorized=1 を追加するだけです。 PHP はフォームの送信、URL クエリ文字列、Cookie など、送信された値ごとに変数を自動的に作成するため、$authorized が 1 に設定され、権限のないユーザーがセキュリティ制限を超える可能性があります。

register_globals=off Web サイトを開けない問題の解決策

register_globals は php.ini の設定であり、php が渡されたパラメーターを受け取る方法に影響します。 register_globals はその名の通り、グローバル変数として登録することを意味するため、On の場合は渡された値が直接グローバル変数として登録されて直接使用され、Off の場合は特定の配列にアクセスして取得する必要があります。それ。したがって、値を取得できないという上記の問題に遭遇した友人は、まず register_globals 設定が値を取得する方法と一致しているかどうかを確認する必要があります。 (表示するには、phpinfo() 関数を使用するか、php.ini を直接表示できます。)

register_globals=off は主にセキュリティ上の理由からであり、同時に、ほとんどのプログラムでは値を off に設定する必要があります。以前は On スタイルで書かれていましたが、大量のスクリプトをどうするか? 以前のスクリプトが適切に計画されており、config.inc.php ファイルなどのパブリック インクルード ファイルがある場合は、次のコードをこのファイルに追加してシミュレートします (このコードは問題を 100% 解決するという保証はありません。十分なテストはしていませんが、うまく機能すると思います)。


コード:

コードをコピー コードは次のとおりです:


if ( !ini_get("register_globals") )
{
extract($_POST);
extract($_SERVER); _FILES);
抽出($_COOKIE);

if (isset($_SESSION) )
{
抽出($_SESSION); >}
}
?>




PHP 未定義のインデックスと未定義の変数の解決策



$act=$_POST[ 'act '];
上記のコードを使用すると、常にプロンプ​​トが表示されます。
Notice: Unknown Index: act in F:windsflybookpost.php on line 18

さらに、場合によっては

引用内容
注意: 未定義の変数: 送信...

などいくつかのヒント

原因: 未定義の変数が原因

解決方法:
1) error_reporting 設定:
error_reporting = E_ALL を検索
error_reporting = E_ALL & ~E_NOTICE に変更

2) Register_globals 設定:
register_globals を検索 = Off
register_globals = On に変更

Notice: Unknown variable: email in D:PHP5ENOTEADDNOTE.PHP on line 9
Notice: Unknown variable: subject in D:PHP5ENOTEADDNOTE.PHP on line 9
: comment in D:PHP5ENOTEADDNOTE.PHP on 9 行目
....
本来、php では変数を定義する必要はありませんが、このような場合はどうすればよいでしょうか。
C :WINDOWS 内であれば、
を調べてください。 php.ini の 302 行目 error_reporting = E_ALL

に変更し、apache2.2 を再起動します。 > 変更: error_reporting = E_ALL
を次のように変更します: error_reporting = E_ALL & ~E_NOTICE
エラーを表示したくない場合は、次のように直接変更します:
display_errors = Off
php .ini の変更権限は、php ヘッダー
ini_set("error_reporting", "E_ALL & ~E_NOTICE")
に追加できます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Black Shark携帯電話の電源が入らない問題を解決する方法を教える5つのヒント! Black Shark携帯電話の電源が入らない問題を解決する方法を教える5つのヒント! Mar 24, 2024 pm 12:27 PM

スマートフォン技術が発展し続けるにつれて、携帯電話は私たちの日常生活においてますます重要な役割を果たしています。 Black Shark フォンは、ゲーム パフォーマンスに重点を置いたフラッグシップ フォンとして、プレイヤーから高い支持を得ています。ただし、場合によっては、Black Shark 携帯電話の電源が入らないという状況にも直面するため、この問題を解決するために何らかの措置を講じる必要があります。次に、Black Shark 携帯電話の電源が入らない問題を解決する方法を説明する 5 つのヒントを共有しましょう: ステップ 1: バッテリー残量を確認する まず、Black Shark 携帯電話に十分な電力があることを確認します。携帯電話のバッテリーが消耗している可能性があります

トマト無料小説アプリで小説を書く方法. トマトノベルで小説を書く方法に関するチュートリアルを共有します。 トマト無料小説アプリで小説を書く方法. トマトノベルで小説を書く方法に関するチュートリアルを共有します。 Mar 28, 2024 pm 12:50 PM

トマト ノベルは非常に人気のある小説閲覧ソフトウェアです。トマト ノベルでは、新しい小説や漫画を読むことができます。どの小説も漫画もとても面白いです。小説を書きたい友達もたくさんいます。お小遣いを稼いで、小説の内容を編集することもできます。 「テキストに文章を書きたいです。それで、小説はどうやって書くのですか?友達は知らないので、一緒にこのサイトに行きましょう。小説の書き方の入門を少し見てみましょう。」 Tomato Novels を使用して小説を書く方法に関するチュートリアルを共有します。 1. まず、携帯電話で Tomato Free Novels アプリを開き、パーソナル センター - ライター センターをクリックします。 2. Tomato Writer Assistant ページに移動し、次の場所で [新しい本の作成] をクリックします。小説の終わり

小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか?投稿時に自動保存された画像はどこにありますか? 小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか?投稿時に自動保存された画像はどこにありますか? Mar 22, 2024 am 08:06 AM

ソーシャルメディアの継続的な発展に伴い、Xiaohongshu はますます多くの若者が自分たちの生活を共有し、美しいものを発見するためのプラットフォームとなっています。多くのユーザーは、画像を投稿する際の自動保存の問題に悩まされています。では、この問題をどうやって解決すればよいでしょうか? 1.小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか? 1. キャッシュをクリアする まず、Xiaohongshu のキャッシュ データをクリアしてみます。手順は次のとおりです: (1) 小紅書を開いて右下隅の「マイ」ボタンをクリックします。 (2) 個人センター ページで「設定」を見つけてクリックします。 (3) 下にスクロールして「」を見つけます。 「キャッシュをクリア」オプションを選択し、「OK」をクリックします。キャッシュをクリアした後、Xiaohongshu を再起動し、写真を投稿して、自動保存の問題が解決されるかどうかを確認します。 2. 小紅書バージョンを更新して、小紅書が正しく動作することを確認します。

WeChat で削除された連絡先を回復する方法 (簡単なチュートリアルでは、削除された連絡先を回復する方法について説明します) WeChat で削除された連絡先を回復する方法 (簡単なチュートリアルでは、削除された連絡先を回復する方法について説明します) May 01, 2024 pm 12:01 PM

残念ながら、WeChat は広く使用されているソーシャル ソフトウェアであり、何らかの理由で特定の連絡先を誤って削除してしまうことがよくあります。ユーザーがこの問題を解決できるように、この記事では、削除された連絡先を簡単な方法で取得する方法を紹介します。 1. WeChat の連絡先削除メカニズムを理解します。これにより、削除された連絡先を取得できるようになります。WeChat の連絡先削除メカニズムでは、連絡先がアドレス帳から削除されますが、完全には削除されません。 2. WeChat の組み込みの「連絡先帳復元」機能を使用します。WeChat には、この機能を通じて以前に削除した連絡先をすばやく復元できる「連絡先帳復元」機能が用意されています。 3. WeChat 設定ページに入り、右下隅をクリックし、WeChat アプリケーション「Me」を開き、右上隅にある設定アイコンをクリックして設定ページに入ります。

モバイルドラゴンの卵を孵化させる秘密が明らかに(モバイルドラゴンの卵をうまく孵化させる方法を段階的に教えます) モバイルドラゴンの卵を孵化させる秘密が明らかに(モバイルドラゴンの卵をうまく孵化させる方法を段階的に教えます) May 04, 2024 pm 06:01 PM

テクノロジーの発展に伴い、モバイルゲームは人々の生活に欠かせないものになりました。かわいいドラゴンエッグの画像と面白い孵化過程で多くのプレイヤーの注目を集めており、その中でも注目を集めているゲームの一つがモバイル版ドラゴンエッグです。プレイヤーがゲーム内で自分のドラゴンをより適切に育成し成長させることができるように、この記事ではモバイル版でドラゴンの卵を孵化させる方法を紹介します。 1. 適切な種類のドラゴン エッグを選択する プレイヤーは、ゲーム内で提供されるさまざまな種類のドラゴン エッグの属性と能力に基づいて、自分に適したドラゴン エッグの種類を慎重に選択する必要があります。 2. 孵化機のレベルをアップグレードします。プレイヤーはタスクを完了し、小道具を収集することで孵化機のレベルを向上させる必要があります。孵化機のレベルは孵化速度と孵化成功率を決定します。 3. プレイヤーはゲームに参加する必要がある孵化に必要なリソースを収集します。

すぐにマスター: Huawei 携帯電話で 2 つの WeChat アカウントを開く方法が明らかに! すぐにマスター: Huawei 携帯電話で 2 つの WeChat アカウントを開く方法が明らかに! Mar 23, 2024 am 10:42 AM

今日の社会において、携帯電話は私たちの生活に欠かせないものとなっています。私たちの日常のコミュニケーション、仕事、生活のための重要なツールとして、WeChat はよく使用されます。ただし、異なるトランザクションを処理する場合は 2 つの WeChat アカウントを分離する必要がある場合があり、そのためには携帯電話が 2 つの WeChat アカウントへの同時ログインをサポートする必要があります。有名な国内ブランドとして、ファーウェイの携帯電話は多くの人に使用されていますが、ファーウェイの携帯電話で 2 つの WeChat アカウントを開設する方法は何でしょうか?このメソッドの秘密を明らかにしましょう。まず、Huawei 携帯電話で 2 つの WeChat アカウントを同時に使用する必要があります。最も簡単な方法は次のとおりです。

携帯電話の文字サイズの設定方法(携帯電話の文字サイズを簡単に調整できます) 携帯電話の文字サイズの設定方法(携帯電話の文字サイズを簡単に調整できます) May 07, 2024 pm 03:34 PM

携帯電話が人々の日常生活において重要なツールになるにつれて、フォント サイズの設定は重要なパーソナライゼーション要件になりました。さまざまなユーザーのニーズを満たすために、この記事では、簡単な操作で携帯電話の使用体験を向上させ、携帯電話のフォントサイズを調整する方法を紹介します。携帯電話のフォント サイズを調整する必要があるのはなぜですか - フォント サイズを調整すると、テキストがより鮮明で読みやすくなります - さまざまな年齢のユーザーの読書ニーズに適しています - フォント サイズを使用すると、視力の悪いユーザーにとって便利です携帯電話システムの設定機能 - システム設定インターフェイスに入る方法 - 設定インターフェイスで「表示」オプションを見つけて入力します。 - 「フォント サイズ」オプションを見つけて、サードパーティでフォント サイズを調整します。アプリケーション - フォント サイズの調整をサポートするアプリケーションをダウンロードしてインストールします - アプリケーションを開いて、関連する設定インターフェイスに入ります - 個人に応じて

Go言語のメソッドと機能の違いと応用シナリオの分析 Go言語のメソッドと機能の違いと応用シナリオの分析 Apr 04, 2024 am 09:24 AM

Go 言語のメソッドと関数の違いは、構造との関連付けにあります。メソッドは構造に関連付けられ、構造データまたはメソッドを操作するために使用されます。関数は型に依存せず、一般的な操作を実行するために使用されます。

See all articles