PHPがサーバ上で正しく動作しない
(ベストアンサー:0回)
レンタルサーバ(XFREE)上で動かそうとしたところ、ブラウザ上にソース
コードが表示されて動作せずに困っています。
ネット上でいろいろ調べ、下記の2行を.htaccessへ追加したところ、
今度はphpを開いたときにソースがダウンロードされてしまいました。
(php.iniの設定画面からMIME設定の追加をしても、同様にソースの
ダウンロードが行われてしまいます。)
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
自分のPCにMAMPを入れて動作を確認した時は意図した通りに動作した為、
サーバの設定もしくはHTML側でのPHPファイルの指定に問題があるのでは
ないかと考えています。
(HTML内でのPHPファイル指定
ローカル : http://localhost:(ポート番号)/xxxxx.php,
サーバ上 : xxxx.php (HTMLとPHPは同一ディレクトリにあります。))
勉強してまだ日も浅いため、初歩的な質問で申し訳ありませんが、
解決法を教えていただけると嬉しいです。
(ベストアンサー:32回)
formでpostですね。
こちらでも試してみたのですが、期待通りに動きました。
index.html:
<html>
<body>
<form action="sub.php" method="post" name="form" onsubmit="return validate()">
<input type="text" name="text" size="40"><br>
<input type="submit" value="Go"><br>
</form>
</body>
</html>
sub.php:
<?php
$text = isset($_POST['text']) ? $_POST['text'] : "(empty)";
?>
<html><body><pre>
<?php
echo $text,"\n";
?>
</pre></body></html>
試したサーバーは sv4.php.xdomain.ne.jp(PHPSQLサーバー) と sv9.wp.xdomain.ne.jp(Wordpressサーバー)。
PHPはどちらも7.1.xです。
.htaccessなどは特にいじっておりません。
php.iniはinclude_pathだけはいじっています。
なにが違うんでしょうね…
(ベストアンサー:32回)
短いサンプルコードを示していただけないでしょうか?
HTML側でボタンを押したら、PHP側の画面に変わる、くらいの超簡単なものでよいので。
トピック作成者からの返信 2019/03/26 06:09 posted(d2cf2483)
情報が足りず、申し訳ありません。
コードの一部は以下の通りです。
(html)
<form action="xxxxx.php" method="post" name="form" onsubmit="return validate()">
<div>
<label for="form__name">お名前 : <span class="is__require--true">必須</span></label>
<input id="form__name" type="texr" name="name" required placeholder="例) 山田 太郎" value="">
</div>
.
.
.
<button type="submit">確認画面へ</button>
<button type="reset">リセット</button>
</form>
(php)
<?php
//フォームのボタン押下時、入力内容を変更に格納
if ($_SERVER["REQUEST_METHOD"]=="POST") {
$name=$_POST["name"];
}
?>
.
.
.
<h1>お問合せ内容</h1>
<form action="xxxxx.php" method="post">
<input type="hidden" name="name" value="<?php echo $name; ?>">
<h2>お問合せ 内容確認</h2>
<p>
以下の内容でお問合せを承りました。<br>
お間違えがなければ「送信」ボタンを押して下さい。</p>
<div>
<div>
<label>お名前</label>
<p><?php echo $name; ?></p>
</div>
</div>
<input type="button" value="内容を修正する" onclick="history.back(-1)">
<button type="submit" name="submit">送信する</button>
</form>
よろしくお願い致します。
(ベストアンサー:32回)
".:/usr/share/pear53:/home/XXX/XXX.php.xdomain.jp/public_html/php"
としております。
PHPのライブラリー(JpGraph)のファイルを設置していて、それを参照できるようにしているだけです。
トピック作成者からの返信 2019/03/27 00:19 posted(d2cf2483)
html, phpファイル共にhtmlサーバに置いていたのが
原因のようです。
初歩的なミスでおさわがせしてしまい、申し訳ありませんでした。
また、いろいろご丁寧に教えていただきありがとうございます。
今回のつまずきを元に、もっとwebの勉強を頑張ります。
トピック作成者からの返信 2019/03/26 07:38 posted(d2cf2483)
さっそく検証いただき、ありがとうございます。
php.iniのinclude_pathは変えていないので、
原因はそこのような気がします。
自分でも調べてみますが、もしよろしければ、
include_path の変更内容を教えていただけますか?