![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
はじめまして。今プログラミングを学習しています。
Form欄から記入した名前、年齢をMysqlのデータベースに格納するプログラミングを作っています。ローカルにインストールしているapacheでは上手く動作するのですが現在レンタルしている(php動作可)サーバーにアップロードすると動きません。その時のエラーでは500 Internal Server Errorかアクセスの許可がありません。のどちらかです。ファイルへのアクセス許可を変えるとこの2つの内のどちらかになります。どのようにすればサーバー上でも動くのでしょうか?
プログラムの簡単な説明は
Form.htmlでpostされたデータを格納したら
check.phpでデータを挿入しましたと表示される
物です。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
《500 Internal Server Error》ということは、CGI認識されている可能性があると言う事です。
ひょっとして、レンタルサーバのPHPはCGI版で、あなたのローカルのPHPはモジュール版なんじゃないですか?
ファイルの先頭に、
#!/usr/local/bin/php
のような呪文が必要かもしれません。(サーバの設定により不必要な場合もアリ)
レンタルサーバに確認されたらと思います。
この辺参考に。
http://support.sakura.ad.jp/support/web/manual/t …
http://www27.tok2.com/home/wanchan/500.htm
No.2
- 回答日時:
ローカルで動いているなら、ソースは大丈夫でしょう、
後は、他のphpファイルが動くなら、
.htaccess設置していたら、それが間違っているとか
設定関係だと思いますがね。
はい。まだ確かめてませんが確認してみます。これじゃまだあまりにも原因となりそうな要因が多すぎて特定も出来そうにないですね。1つ1つ可能性を潰して見ます。ありがとうございました。
No.1
- 回答日時:
LINUXサーバだと思いますので、
check.phpのパーミッションを
775か777辺りで動くと思いますが、
サーバ会社の説明にあると思います。
この回答への補足
それでもダメです。ソースは
<?php
require_once("DB.php");
//投稿のため伏せてあります。
$dbUser = "";// ユーザー名
$dbPass = "";// パスワード
$dbHost = "";// ホスト名
$dbName = "";// データベース名
$dbType = "";// データベースの種類
$dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName";
// データベースに接続
$conn = DB::connect($dsn);
// 接続に失敗したらメッセージを表示して終了します。
if (DB::isError($conn)){
die($conn->getMessage());
}
// POSTされたデータを受け取り、エスケープします。
$last_name= addslashes($_POST['last_name']);
$first_name= addslashes($_POST['first_name']);
$age= addslashes($_POST['age']);
$sql = <<<EOS
INSERT INTO member
(
last_name,
first_name,
age
)
VALUES
(
'$last_name',
'$first_name',
$age
)
EOS;
if(preg_match("/Windows/", $_ENV["OS"])){
$sql = mb_convert_encoding( $sql, "SJIS", "EUC-JP");
}
// SQL文を発行
$result = $conn->query($sql);
if (DB::isError($result)) {
die ($result->getMessage());
}
$count = $conn->affectedRows();
print "データを" . $count . "件、挿入しました。";
// データベースから切断します。
$conn->disconnect();
?>
です。コードに間違いがあるんでしょうか?
サーバでの設置場所は
www---form.html(777)
check.php(777)
としてます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- サーバー Laravelをレンタルサーバーにインストールするにはどうすればいいですか? 2 2022/06/29 10:17
- MySQL 「掲示板のログイン画面」はPHP~MySQLに「データベース認証のシステム」方式です。 1 2022/09/27 05:00
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- フリーソフト 色々な形式の個人情報を後で参照しやすいようWindow10で管理したいのですが、どんな方法があるの? 1 2023/04/29 16:46
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- au(KDDI) 「カメラへのアクセスを許可してください」のせいで年齢確認書類を撮影できない、アップロードできない 2 2022/11/01 00:04
- MySQL mysqlがインストールされているのかわかりません 1 2023/06/05 02:26
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
URLが.PHPってどういう...
-
.phpファイルが、表示されない
-
apacheで拡張子を省略してアク...
-
cakephpで特定ファイル表示(hta...
-
シェルコマンドでphpを実行した...
-
PHP+MySQL SQL文を外部ファイル...
-
sqlite_open、SQLite3::open
-
別のドメインのファイルをrequire
-
phpファイルについて
-
動作os
-
opensslが正しくない - その2
-
htdocsフォルダ以外ではPHP...
-
サイトのphpソースコードを表示...
-
Xamppでindex.phpだけしか表示...
-
onedrive にexcelファイルをア...
-
別ファイルの変数を呼び出した...
-
PHPのif文でその処理を途中で抜...
-
フォントの色を変えるには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
URLが.PHPってどういう...
-
.phpファイルが、表示されない
-
use と requireの違いは?
-
PHPからCronを編集したい
-
HTMLに埋め込んだPHPがうまく出...
-
さくらレンタルサーバーでPHPが...
-
プロパティファイルの読み込み...
-
htmlspecialcharsが機能してい...
-
PHPファイルの中身が見られるこ...
-
thtmlファイルとはどんなファイ...
-
PHP+MySQL SQL文を外部ファイル...
-
サーバ無しでphpを動作させる
-
phpの書き方
-
PHPを使ってのサーバ上ファイル...
-
cakephpで特定ファイル表示(hta...
-
PHPの慣習的な書き方・組み方に...
-
sqlite_open、SQLite3::open
-
session_start()でwarningが表...
おすすめ情報