フォーム変数が渡せない問題について

このQ&Aのポイント
  • 自宅のPCにturbolinux7+php4.2.1+apache1.3.26をインストールしましたが、フォーム変数が渡せない状態です。
  • 他のサーバでは問題なく動作するため、サーバの設定が原因と考えられます。
  • 初心者にもわかりやすい言葉でアドバイスを頂きたいです。
回答を見る
  • ベストアンサー

PHPのインストールで

いつもお世話になっております。 今回自宅のPCへturbolinux7+php4.2.1+apache1.3.26をインストールしました。アパッチの起動とphpinfo();を確認したところ問題なく動いているようなのですが、ローカルで作成したスクリプトをアップロードしてみて見ると表示はきちんとされていているのですが、フォームの変数が全くわたせない状態です。 他のサーバへアップロードして試したところ問題なく動いていたので、スクリプトではなくサーバの方だと思うのですが、どのようなところを調べれば解決するでしょうか? なにぶんリナックスも初心者に近いのでわかりやすい言葉でアドバイスを頂けると助かります。 詳細 フォームタグで指定している変数が渡し先のスクリプトで受け取れません。 また、URLの後ろにgetで変数名と値を入力してみたのですがコレも渡りませんでした。 フォーム内でのアドレス指定は相対指定ですが絶対パスでも試してみました。(結果はだめでした) 使用しているブラウザはIE5.5SP2 です。 サーバのIPは固定IPでドメインはありません。 よろしくお願いします。

  • fichi
  • お礼率38% (24/63)
  • PHP
  • 回答数2
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
  • 6ma6
  • ベストアンサー率53% (7/13)
回答No.2

多分、問題はPHPの変数の受け渡し方法にあると思います。 php.iniにおいて、register_globals 設定がoffになっているのだと思います。 POSTで送った場合は_POST["NAME"]という形でないと受け取れません。 詳細は下記のURLで。

参考URL:
http://php.planetmirror.com/manual/ja/language.variables.predefined.php
fichi
質問者

お礼

ありがとうございます 解決しました。 今回のことで始めて知ったのですが フォームのデータを受け取る形に $POST["data"]というのがあるとはびっくりしました。 いつも人が設定したサーバーを利用していると なかなか気づかないところだとおもいました。 大変勉強になりました。 ありがとうございます。

その他の回答 (1)

noname#4147
noname#4147
回答No.1

PHP4.2.0以降、仕様が若干変更されています。 <input type="text" name="hoge" value="hogehoge"> の場合、 POSTでは$_POST["hoge"] GETでは$_GET["hoge"] で受け取れます。

fichi
質問者

お礼

無事解決いたしました ありがとうございました。 今回のことでバージョンによる仕様の変更なども 注意深く調べてからインストールしなければならないことを学びました。 ありがとうございました

関連するQ&A

  • PHP環境を構築中です。

    PHP環境を構築中です。 ネットで文献を見ながら設定を行い、 サーバ上でhttp://localhost/phpinfo.phpと指定して phpinfo()をブラウザに表示する事までできたのですが、 クライアントから、http://localhost/phpinfo.phpでは表示できません。 localhostの代わりにIPアドレスを入力すれば表示する事ができます。 きっとDNSの設定をどこかでしなければならないのだと思うのですが、 どこでどのような設定をすれば良いでしょうか? DNSサーバは別立てで持っています。 ドメインの部分は「appweb」としたいのですが、ドメイン取得は行っていません。 社内環境で使用する場合でもドメインの取得は必要なのでしょうか? php:5.2.12 apache:2.2.14 SVOS:WinXP FTP:TinyFTPDaemon Ver0.52b

  • webminでのDNSサーバーの設定方法

    現在、TurboLinux6.0でWebサーバーを作ろうと考えています。 Apacheは既に動いています。 グローバルIPを 202.***.***.209 - 202.***.***.222 までもらいました。 ドメインは、 hogehoge.jp という形で取得済みです。 ApacheをインストールしているTurboLinuxにはグローバルIPの 202.***.***.211 を振ってあります。IPを打てば外からでもWebを見れるようにはなっています。 何とかドメインで閲覧できるようにするために、DNSの設定をwebminでやろうとしているのですが、まったく意味が分かりません。 設定方法を教えてください

  • <?php phpinfo(); ?>と<? phpinfo(); ?>の違い。

    OpenPNE のインストールで色々調べており、以下のサイトで質問させて頂いております。 Fatal error: OpenPNE設置時のエラー に関して http://oshiete1.goo.ne.jp/qa2511321.html 色々調べており、PHP に関する問題では思っていますが、正直な所、PHP を触るのが初めてですので、初心に戻って PHP から調べています。 サーバは、さくらインターネットを借りており、基本的に apache,php 等は標準で動作しています(インストール作業はしていません)。 PHP の動作確認をしようと、 <? phpinfo(); ?> と書いたテキストファイルを作成してサーバにアップロードしました。 ファイル名は、test.php としました。 アップロード後、サーバにアクセス(test.php)すると白紙(真っ白)な状態です。ソースを確認すると<? phpinfo(); ?>が表示されます。ファイルは詠み込まれていると判断しました。 少し調べ所、 <? phpinfo(); ?>を<?php phpinfo(); ?>としたらどうでしょうかと言うアドバイスが有り、<?php phpinfo(); ?>と修正し、サーバにアップロードしら所、phpinfo のページを見ることが出来ました。 そこで質問なんですが<?php phpinfo(); ?>と<? phpinfo(); ?>は何が違うのでしょうか、サーバ側の設定でしょうか。 また、この違いが、OpenPNE のエラーと関係があるのでしゅか? アドバイスを頂ければ幸いです。

    • ベストアンサー
    • PHP
  • apacheとphpを入れたのですが上手く動作してくれません。

    apacheを起動すると次の様なものが表示されます。 The requested URL /phpinfo was not found on this server. Apache/2.0.53 (Win32) Server at localhost Port 80 restartすると表示されません、これは何か問題あるのでしょうか? またphpを実装して実行したら The requested URL /phpinfo was not found on this server. Apache/2.0.53 (Win32) Server at localhost Port 80 この様なエラー?が発生しました。 どうしたらいいのうでしょうか??色々調べてやってみても駄目だした、皆様宜しくお願いします。

    • 締切済み
    • PHP
  • バーチャルドメインの設定の仕方について

    現在、一つのIPアドレスと一つのドメインでWWWサーバーを運営しております。 サーバーはRedHatLinux上でAPACHEを使っています。 例えば、ドメインが hogehoge.com でIPアドレスが100.100.100.100 だったと します。 そこに、IPアドレスは1つのままで、サブドメイン abcd.hogehoge.comを 使いたいとします。 このときにはネームサーバーになにか設定をしないといけないんでしょうか。 それともAPACHEにNameVirtualHostを指定すればいいだけなのでしょうか? ネームサーバーの設定とApacheの設定のそれぞれについて教えてください。 お願いいたします。

  • TURBO Linux 8.0 Server プロモーション版 に PHPのインストール

    お世話になります。 TURBO Linux 8.0 Server プロモーション版をインストールした後、ftp.turbolinux.co.jpのtls-8.0からrpmをすべてダウンロードして、PHPやRUBYなど初期導入されていないものを追加導入しました。 TEST.PHP <?PHP PHPINFO(); ?> を/var/www/html/に作成し、http://localhostで表示しようとしてもうまくいきません。(test.phpが何も返答していないようです。test2.phpとやってみるとApacheがエラーを返します。) index.htmlを作成すると、それは問題なく表示されます。 /etc/httpd/conf/httpd.confの拡張子PHPとPHPSについてのコメントアウトは済んでいます。 Apacheの導入済の環境に、単純にRPMから導入しても駄目なのでしょうか? それとも、導入するモジュールの関係でしょうか? Apacheは、ダウンロードしたISOイメージに入っていたようです。

  • XAMPPを使ったサーバーへのアップロードの仕方を教えてください。

    XAMPPを使ったサーバーへのアップロードの仕方を教えてください。 XAMPP for Macを使っています。 MacはOS10.4です。 localhostのページでphpinfo() を使ってみるとちゃんとXAMPPでインストールしたものが入っているようなんですけど、 自分のドメインにアップロードしたものをphpinfo()で確認してみると違うものが動いているようです。 どのようにしたら、XAMPPでインストールしたものが自分のドメインで使えるのか教えてください。 はじめてする質問ですので、分かりぐらいところもあるかと思いますがよろしくお願いします。

    • ベストアンサー
    • PHP
  • バーチャルドメインについて

    DNSとApacheが連携をしてバーチャルドメインは成り立つものだと理解しています。 IPベースのバーチャルドメインの仕組みはApacheに2つバーチャルドメイン(IPベース)が設定しておいて、それをDNSが順番に問い合わせをして1つのサーバーからApacheに設定されている2つのIPアドレスを順に返すということだろうと思います。 ということはDNSの問い合わせ動作は自分が管理している(おそらく設定ファイルで指定する)IPの範囲のサーバーに順番に(DNSへ問い合わせに来た)IPアドレスを問い合わせているという認識で正しいでしょうか。

  • WindowsでPHPのアップロード系処理を扱うときのディレクトリパー

    WindowsでPHPのアップロード系処理を扱うときのディレクトリパーミッションについて。 Windows7+Apache2.2.x+PHP3.1でアップロード処理を行ったときに、php.ini内で設定されているアップロード一時ディレクトリからmove_uploaded_fileでファイルを移動させるときにうまくいきません。$_FILES変数から一時ディレクトリの値をとってくることすらできていないようです。サーバを起動しているマシン内から行うとできます。リモートからのときにできません。 で、探してみたらこの問題で引っかかっている人が結構いたようで、Webサーバのディレクトリと同じパーミッションを与えてやればいいというような記述があったので、アップロード用ディレクトリにApacheのルートディレクトリから属性を継承ささせ、「Everyone」ユーザにフルコントロールを与えてみたのですが改善しませんでした。具体的な手順をご存知の方がおられましたら教えていただけると幸いです。

  • PHP4.3.10

    これまでに使っていたPHP4.2.3だと、 phpMyAdmin使用時にバグがあるということなので、 4.3.10を入れなおしてみました。 phpMyAdminは動くようになったのですが、今度は今までできていた、 ファイルのアップロードができなくなってしまいました。 php.iniの設定で file_uploads = On upload_max_filesize = 2M という設定はきちんとしてあります。 プログラムに問題があるのかな?と最初思っていたのですが、 レンタルしているサーバーでテストしたところ、普通にアップロードできます。 レンタルサーバーのPHPは4.2.3です。 自分として考えられる原因は、使用しているApacheのバージョンが古いのかな? というようなことなのですが(バージョンは1.3.27です。) 正直言って、よく分かりません。 もしApacheが問題なら、バージョンを上げたいとも思うのですが、 なるべく安定したものがいいと思っています。 2.0.50は手元にあるのですが、これでいいのかどうか…。 それとも他の設定がまずいのか…。 誰か知っている方おられましたら、ご回答よろしくお願いします。

    • ベストアンサー
    • PHP

専門家に質問してみよう