問題タブ [superglobals]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
3935 参照

iphone - Objective-C と iOS のスーパーグローバル

アプリにある種のスーパーグローバルを追加しようとしています。小さな整数のみを格納しますが、アプリのどこからでもアクセスできるようにする必要があります。

これにはデリゲートを使用できることはわかっていますが、アプリケーションでスーパーグローバルを設定できれば簡単ではないでしょうか (もちろん変更可能である必要があります)。

では、iOS アプリケーションでスーパーグローバルを作成する最良の方法は何でしょうか?

ああ、おそらく、App Delegate に変数を「所有」してもらいたいことを言及する必要があります。

0 投票する
2 に答える
404 参照

php - PHP $_GET変数からコードイグナイターへの変換

CodeIgniter フレームワークの使い方を学んでいます。私は get 変数がどの本体ファイルを index.php に含めるかを決定する世界から来ています。

そのため、MVC スタイルのコーディングでは、後続のビューがページの本体にすぎないスケルトン ビューを作成する方法がわかりません。

何か案は?

0 投票する
2 に答える
15038 参照

php - $_SERVER['HTTP_HOST']にはポート番号も含まれています=/

多分それがバグかどうかはわかりません。

サーバーに2つのvirutalhostがあります。

virtualhost1.com virtualhost2.com

ポート80でvirtualhost1.comを開いた場合(virtualhost1.com:80)

しかし、virtualhost2.com:80を開くと

理由をお聞かせいただけますか?

0 投票する
5 に答える
1066 参照

php - この動作が文書化されている場合、PHPスーパーグローバルの設定を解除しても安全ですか?

私はPHPフレームワークを構築しており、その中にURL $_GET$_POSTおよび、$_FILEスーパーグローバルを解析するリクエストオブジェクトがあります。

安全なWeb習慣を奨励したいので、SQLインジェクションなどからデータを保護しています。

このフレームワークのユーザーがリクエストオブジェクトを介して安全でクリーンなデータにアクセスできるようにするために、unset($_GET, $_POST, $_REQUEST);これらの変数を解析した後に使用する予定です。

これをメソッドのコメントで文書化し、フレームワークの文書でこれが起こっていることを説明します。

私の質問は:これは望ましい行動でしょうか?私が予測していなかった潜在的な落とし穴は何ですか?

0 投票する
1 に答える
182 参照

php - $_FILE グローバルを任意に設定できますか

スーパーグローバル $_FILE['picture']['temp_name'] を使用して画像ファイルとサムネイルを作成する、私がコーディングしていない関数があります。ただし、ユーザーが画像をアップロードしないと、画像もサムネイルも作成されず、これらの画像を表示に使用する別のアプリケーションが台無しになります。

そこで、ユーザーが画像をアップロードしない場合、サーバーに保存されている画像に $_FILE['picture']['temp_name'] を任意に設定し、 $_FILE['picture']['temp_name' を渡したいと思います。 ] 最初に述べた関数に。

私の質問は、スーパーグローバル $_FILE['picture']['temp_name'] = file_path/preset_image.jpg を任意に設定できますか?

ありがとうございました、

0 投票する
4 に答える
5258 参照

php - 可変変数で $_SERVER を使用する際のエラー (PHP)

GET パラメータを使用してスーパーグローバル変数の名前を取得しようとしていました。_VAR_NAMEget リクエストで( なしで)のみを渡すように言われた$ので、プログラムでは変数 variable: を介してアクセスする必要があります$$_GET['parameter_name']

以外はすべてうまくいきました$_SERVER。何が悪いのかを試すために、何が起こっているのかをテストするために小さなphpスクリプトを実行しました. コードは次のとおりです。

バージョンが機能しない理由はあります_SERVERか? 次のエラーが表示されます。

注意: 未定義の変数: _SERVERin ...

0 投票する
3 に答える
333 参照

php - $_POST スーパーグローバルが渡されない (1and1)

基本的なフォーム ページを作成しましたが、Aptana、WAMP、および基本的な 1and1 でホストされたページを介して、フォーム フィールドが $_POST スーパーグローバルを通過できません。

index.html ページは次のとおりです。

keyword.php に渡すもの

親愛なる主よ、私は何を間違っていますか。穏やかな。PHP 5.3.4

0 投票する
1 に答える
760 参照

php - PHP: $_SESSION は設定されませんが、$_POST は ?

[@the downvote とばか発言、人々を打ち負かすのはクールではありません。質問をする前に、ドキュメントとコースノートを 3 日間再​​確認しました。ジェームズがしたように、これを閉じて、役に立たない事実に反するコメントが積み重なる馬鹿の合唱を防ぎます. Charles と Brent B に大変お世話になりました。これは Safari の問題ではないことが判明したため、これらのタグを削除しました。]


$_SESSION が Safari で設定されていないため、複数ページのフォームが壊れます。$_POST、$_REQUEST は設定されます (ただし、後続のページでは明らかに消えます)。バージョンは PHP: 5.3.1、Safari 5 です。

ヘルプ!次のいずれにも問題はありません。すべてを確認し、他の関連する質問をすべて読みました。

  • session_start() は機能します。SID/PHPSESSID はページ間で保持されます。
  • session.use_cookies = 1、session.use_only_cookies = 1
  • php.iniを確認しましたが、問題ないと思います
  • すべての Cookie を受け入れるように Safari を設定しました (今のところ)。変わりはない。
  • $_SESSION['debug']を手動で設定できますが、それページ間で保持されます (セッション ファイルは正しく書き出されます)。そうしない限り、$_SESSIONは定義されません。

このナンセンスをデバッグする時間がないので、次の土壇場での回避策のうち、最も醜くないものはどれですか? (これはプログラミングの割り当てであり、プロダクション コードではありません) コース ノートによると、$_SESSION は $_POST、$_REQUEST、$_GET、セッション、およびグローバルをマージすることになっていますよね?

  1. $_SESSION = array_merge($_SESSION,$_POST);を手動で実行します。【これは効く】
  2. 非表示のフォームを使用して、後続のフォームに$_POSTを再投稿します
  3. 他の?

(より広い意味で、PHP は単に Safari (5) で壊れていると考えるべきですか?)

0 投票する
2 に答える
340 参照

php - PHP インタープリターとスーパーグローバル

まず第一に、私はフランス人学生なので、英語のレベルが低くてすみません。

現在、Web サーバー (C++) を開発しており、CGI 実行部分、より正確には PHP CGI 部分を開発する必要があります。

ユーザーがサーバー上の .php ページを要求すると、fork/pipe して /usr/bin/php インタープリターを呼び出します。例えば ​​:

$ /usr/bin/php index.php

これで、結果をバッファー (index.php の生成された html コード) に保存し、このコンテンツをクライアントに送信できます。変数のない単純なスクリプトで機能しています。

ただし、多くの PHP スクリプトは $_GET や $_POST などのスーパーグローバルを使用しています。私の問題は次のとおりです。phpインタープリターにこの引数を与えるにはどうすればよいですか?

例: この $_POST 変数を設定して、"Hello world" をバッファに保存するにはどうすればよいですか?

今後ともご回答よろしくお願いいたします。

心から

0 投票する
7 に答える
7636 参照

php - $_GET データを取得するには、PHP スーパーグローバルまたはフィルター入力を使用する必要がありますか?

私はグローバル変数が本当に嫌いです - おそらくそれは私の中のC#プログラマーですが、PHPで作業しているときは、次のようなことをしなければならないたびに歯を食いしばります:

はい、私はそれを非常に単純化しすぎており、はいはい、これらすべてを適切にサニタイズしています。実際、私が構築したフレームワークでは、すべてのスーパーグローバルがほぼ実行の開始時に取得され、そこから依存性が注入されます。

私は PHP マニュアルでこの関数に出くわしました (本当に毎日何か新しいことを学んでいます): filter_input_array()。

したがって、技術的には、GET スーパーグローバルからすべてを取得する代わりに、次のようにすることができます。

....など、POST、REQUESTなどの他のものと同様です。私の質問は、filter_input_arrayを使用してスーパーグローバルの惨劇を回避する必要があるか、またはそれらに固執してfilter_input 関数? これに関する他のみんなの経験は何ですか?

編集: 1 つ忘れていました。filter_input 関数は、スーパーグローバルに対して行うスクリプト レベルの変更を認識していないため、後で$_GET['cheese'] = 'puff';実行しようとするfilter_input(INPUT_GET, 'cheese');と null が返されます。私はすべてを依存性注入するので、これは問題ありませんが、気付いていない場合、後で不意を突かれる可能性があります。