マンガでよめる痔のこと・薬のこと

WindowsVista でPHPを使っています。
XAMPPを、D:/Program Files
にインストールし、
http://localhost/echo.php
は、正常に実行できました。

しかし、この「echo.php」ファイルを、
http://localhost/work/echo.php
に移すと、実行できません。

なぜなのでしょうか。

お手数をおかけして申し訳ありません。
教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (6件)

workフォルダは、htdocsのフォルダの中にありますか?


そうであれば、workの権限がhtdocsと同じになっているか確認してください。
そうでなくてもworkの権限を確認してみてください。

この回答への補足

権限の確認というのはどのようなものでしょうか。
無知で申し訳ありません。。。

補足日時:2008/03/11 13:02
    • good
    • 0

http.confファイルのDocumentRootの行がhtdocsへのパスになっているかを確認してみてください。


 この行をほかのフォルダへのパスに設定されている場合は、
Apache2.0とApache2.2とでは、少し設定が異なります。
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。

DocumentRoot "D:/xampp/htdocs"
になっていました。
正常ですよね。。。

いろいろ調べていますが、まだ分かりません。

お礼日時:2008/03/12 13:36

フォルダやファイルにはアクセスを許可する権限があります。


この権限をブラウザからアクセス可能な権限にしないといけません。
通常Usersで「読み取り」、「読み取りと実行」の権限が必要でしょう。
アクセス許可をフォルダのプロパティで「セキュリティ」タブで設定します。
htdocsフォルダと同じ権限であれば動くと思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。

調べてみましたが、権限は同じでした。

Vistaの特殊な設定なのでしょうか。。。

お礼日時:2008/03/12 09:31

>htmlファイルも表示されません。



となるとpathが違うとしか思えませんけどねぇ・・。apache\conf\httpd.confは何か書き替えてますか?

あとは・・Vistaということなので、インストール先を「D:\xampp」などに変えてみてはどうでしょう?「Program Files」は特別扱いされているハズなので>Vista。
    • good
    • 0
この回答へのお礼

ありがとうございます。

>apache\conf\httpd.confは何か書き替えてますか?
特別なことは何もしていません。

>インストール先を「D:\xampp」などに変えてみてはどうでしょう?
インストールをこちらにし直してみました。
それでも、同じ症状が出ます。

http://localhost/echo.php
は正常で、
http://localhost/work/echo.php
は同様のエラーが出ました。

URLの打ち間違いがないかは何度も確認をしました。

いったい何が原因なのでしょう。。。

お礼日時:2008/03/12 10:03

404エラーですからpathが違っていますね。

htmlファイルは同じpathで表示できますか?( http://localhost/work/index.html など)
    • good
    • 0
この回答へのお礼

ありがとうございます!

htmlファイルも表示されません。

ただ、何度もチェックし、フォルダ名も一文字にしたりして試しましたので、pathは間違っていません。

何が原因なのでしょう。。。

お礼日時:2008/03/11 12:29

表示できない


とはどのよな状態ですか?
なにかしらエラー的なメッセージが出ていますか?

表示されているものを提示してください。
または、真っ白だとか 状況を詳しくお願いします。

この回答への補足

ご指摘ありがとうございます!
エラーメッセージは下記のとおりです。

Object not found!
要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。

サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。

Error 404
localhost
03/11/08 11:51:22
Apache/2.2.8 (Win32) DAV/2 mod_ssl/2.2.8 OpenSSL/0.9.8g mod_autoindex_color PHP/5.2.5

補足日時:2008/03/11 11:51
    • good
    • 0

このQ&Aに関連する人気のQ&A

php Windows」に関するQ&A: phpMyAdminが使えない

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QXAMPPについて

PHPの勉強をはじめた初心者です
OSはWindowsvista




ローカル環境での学習をするため、XAMPPをインストールし、正常にインストールは完了できましたが、
テキストエディタで作成したphpファイルをローカルディスク/xampp/htdocs/test.phpとして保存し、
アドレスバーにhttp://localhost/test.phpとして検索をかけたのですが、

Object not found!

要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。

サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。

Error 404

となってしまいます
つづりは合っているはずですし、
ローカルディスク/xampp/htdocsの中に、test.phpがあることは確認済みです

確認テストとして、http://localhost/index.htmlを検索すると
It works!
と出ます

http://localhost/
でxamppのインストール画面は確認済みです

以前、アパッチを単体でインストールしたのですが、
今回エラーがでた時調べたらそれが影響しているかもとありましたので、単体のアパッチは消しました。

test.phpファイルの拡張子はPHPファイルとして確認済みです



長文乱文で申し訳ないのですが、原因可能性を教えて頂けますか?

PHPの勉強をはじめた初心者です
OSはWindowsvista




ローカル環境での学習をするため、XAMPPをインストールし、正常にインストールは完了できましたが、
テキストエディタで作成したphpファイルをローカルディスク/xampp/htdocs/test.phpとして保存し、
アドレスバーにhttp://localhost/test.phpとして検索をかけたのですが、

Object not found!

要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。

サーバーの障害と...続きを読む

Aベストアンサー

他のアパッチが立ち上がってないか確認する。

index.htmlの内容を書き換えて反映されるか確認する。

index.htmlをコピーしてtest.htmlを作成しアクセスしてみる。

index.htmlをindex.phpにしてアクセスしてみる。

など確認してみてください

QApacheでhttp://localhost/が表示されない

Apacheバージョン2.0.50をインストールし、設定ファイルは一切変更していない状態でhttp://localhostと入力しても「あなたの予想に反して・・・」のページが表示されません。
何回かApacheの再インストールも試してみましたが変化がありません。
ローカルで動作確認するだけなので、インストールにあたってNetworkDomainなどのアドレスは「localhost」を入力しています。
何か原因を特定する方法はありませんでしょうか。
ちなみにOSはWindowsXPのHomeEditionです。

Aベストアンサー

(1) まずは、Apacheが起動しているか確認しましょう。
  これは管理ツールのサービス、Apache Server Monitorを見ればわかります。

(2) ポート番号80がLISTEN状態になっているか確認しましょう。
  これはnetstatコマンドで確認できます。

(3) パーソナルファイアウォールソフトをインストールしているなら、
  localhost:80 からの接続を許可しているか確認してみましょう。

(4) IISなど、他のwebサーバを同時に動かしていないか確認してみましょう。

(5) ブラウザでプロクシサーバを指定しているのでしたら、
  localhostはプロクシーを見ない、など設定してみてください。


ほかにもいろいろありますが、Apacheの設定の前に、これくらいは確認しましょう。

Qeclipseのlocalhostの設定について

Pleiades All in One 4.3.0.v20130626 Ultimateを使っているのですが、実行しようとするとObject not found!と出てきます。PHP実行可能ファイルの設定は正しく行われていると思います。

気になっているのが、localhostはApacheではxampp\htdocsですが、eclipseで実行しようとしているプログラムはC:\workspaceにあります。

eclipse側のlocalhostは、どこかで設定する箇所はあるのでしょうか?
デバッグの構成や、そこのPHPサーバのlocal Web Rootあたりをいじったりしましたが、上手く動きません・・・。結構ハマっているので、ご教授頂きたいです。よろしくお願いします。

Aベストアンサー

こんにちは。

Eclipseの起動時にワークスペースはどこか聞いてくると思いますが、そこで
xampp\htdocsを選択してあげれば、各々のプロジェクトは
http://localhost/project/

でアクセスできるはずです。

それが一番手っ取り早いのですが、ほかの方法としてはApacheのdocumentルートをc:\workspaceに変更するとか。
apacheのvhost機能を使ってやるとか。(hostsファイルをいじる必要がありますが)
http://project/
とかでアクセスできるようになります。


デバッグ等が必要であればこのあたりを参考にしてみてください。
http://atmarkplant-dj.blogspot.jp/2011/04/xampp-eclipse-pdt-xdebug.html

QボタンをクリックでPHP文を実行

ボタンをクリックしたときのみPHP文を実行したいのですが・・・

<input type="button" onClink="<?php~?>">
でいけるかと思ったのですが、
ページ表示時に<?php~?>が実行されてしまい、うまくいきませんでした。

onClink="window.open(test.php)"
という方法以外でお願いします。

Aベストアンサー

AjaxはもともとJavaScriptの機能である非同期通信をつかったもので。Ajaxという言語があるわけではありません

Ajaxを利用するのであれば、JavaScriptのXMLHttpRequestを使って非同期通信できるような実装をしなくてはなりません
簡単にサンプルコードで書けるほど単純なものでもありません

一般的なサーバーサイドスクリプトの動作として、
ボタンを押す->サーバーへリクエストする->サーバーが処理する->クライアントに何かしらの結果を返す(出力する)です
つまり、PHP等のサーバーサイドスクリプトは、遷移させることが大前提で動作します

ですから、ボタンを押してその場でJavaScriptと同じようにPHPが動くなんてことはありえません。
ボタンを押したらサーバーにリクエストする という動作ならば可能です。

つまり
質問で言われているような
onClink="window.open(test.php)"

<form name="f1" action="test.php" method="post">
<input type="submit" name="submit" value="submit" />
</form>
等のような形になります

こういった一般的な方法だと いちいち画面が切り替わったようになってしまうのを嫌って Ajaxでコレと同じことを、画面を切り替えずに行っているだけに過ぎません

AjaxはもともとJavaScriptの機能である非同期通信をつかったもので。Ajaxという言語があるわけではありません

Ajaxを利用するのであれば、JavaScriptのXMLHttpRequestを使って非同期通信できるような実装をしなくてはなりません
簡単にサンプルコードで書けるほど単純なものでもありません

一般的なサーバーサイドスクリプトの動作として、
ボタンを押す->サーバーへリクエストする->サーバーが処理する->クライアントに何かしらの結果を返す(出力する)です
つまり、PHP等のサーバーサイドスクリプトは、...続きを読む

Q配列をPOSTで受けとる

タイトルのまんまですが
配列をformで送って
それをPOSTで受け取りたいのですが
うまくいきません

具体的に言うと
<?php
print"<form method=POST action=action.php>";

for($i=0; $i<$n; $i++){
   print"<input type=text name=foo[$i]>";
}
print"<input type=hidden name=n value=$n>";
print"<input type=submit value=go>";
print"<form>";
?>


///////////以下action.php//////////////////
<?php
$n = $_POST["n"];
for($j=0; $j<$n; $j++){
   $foo[$j] = $_POST["foo[$j]"];
   print"$foo[$j]";
}
?>


こんな感じのことがしたいのですが
うまくいきません
どうもPOSTされてないみたいでfoo[$j]はnullです
凡ミスな気がしなくもないんですが...プログラム初心者なんで↓↓
教えてください
よろしくお願いします

タイトルのまんまですが
配列をformで送って
それをPOSTで受け取りたいのですが
うまくいきません

具体的に言うと
<?php
print"<form method=POST action=action.php>";

for($i=0; $i<$n; $i++){
   print"<input type=text name=foo[$i]>";
}
print"<input type=hidden name=n value=$n>";
print"<input type=submit value=go>";
print"<form>";
?>


///////////以下action.php//////////////////
<?php
$n = $_POST["n"];
for($j=0; $j<$n; $j++){
   $foo[$j] = $_POST["foo[$j...続きを読む

Aベストアンサー

atsuGTさんこんにちは。


受け取り側は

$foo = $_POST["foo"];

とするだけで$fooに送信された配列が格納されます。


$_POST["foo[添え字]"] ではなく、
$_POST["foo"][添え字] となります。

Qsyntax error, unexpected '}' というエラーの対処法

PHPを習い始めて三日目になるのですがParse error: syntax error, unexpected '}' in C:\Program Files\Apache Group\Apache2\htdocs\****\****\game.php on line 33
というエラーがでるのですが33行目前後のどこをなおせばいいのでしょうか?
・game.php
<html>
<head>
<title>数当てゲーム</title>
</head>
<body>
<h1 style="background:#cccccc">数当てゲーム</h1>
<form method="POST" action="game.php">
1~100までの数を入力してください
<input type="text" name="answer" size="5" maxlength="3" />
<input type="sbumit" value=回答" />
</form>
<hr />
<?php
session_start();
if(is_null($_SESSION['answer'])){
mt_stand(microtime()*1000000);
$_SESSION['answer']=mt_rand(1,100);
$_SESSION['game_cnt']=0;
}
if($_POST['answer']!=""){
$_SESSION['game_cnt']++;
if($_session['answer']==$_POST['answer']){
print("おめでとうございます".
$_SESSION['game_cnt']."回で正解しました!");
session_destroy();
}else{
if($_SESSION['answer']>$_POST['answer']){
print("もう少し大きいです。");
}else
print("もう少し小さいです。");
}
}
}
?>
</body>
</html>
それとこの間違えたところをなおしたあとはいつもコンピュータを再起動しないと修正したところが適用されないのですがほかに方法はないですか?基本的な質問ですいません。

PHPを習い始めて三日目になるのですがParse error: syntax error, unexpected '}' in C:\Program Files\Apache Group\Apache2\htdocs\****\****\game.php on line 33
というエラーがでるのですが33行目前後のどこをなおせばいいのでしょうか?
・game.php
<html>
<head>
<title>数当てゲーム</title>
</head>
<body>
<h1 style="background:#cccccc">数当てゲーム</h1>
<form method="POST" action="game.php">
1~100までの数を入力してください
<input type="text" name="answer" size="5" max...続きを読む

Aベストアンサー

print("もう少し大きいです。");
}else
print("もう少し小さいです。");
のelseの後に{がないようですが、大丈夫でしょうか?

QXAMPPのスタート(表示)画面が表示されない

こんな質問で大変申し訳ありませんが、XAMPPをexeファイルからインストールしました。
それからhttp://localhost/を入力してもApacheの画面が出てしまいます。
何が原因なのでしょうか。
XAMPPの画面を表示させるにはどうしたらいいのでしょう。
こんなつまらない質問で本当にすいません。
どうぞ宜しくお願い致します。

Aベストアンサー

ANo.1です。

補足説明ありがとうございます。
ちょっと複雑な状況ですが、いずれにしてもXAMPPのインストールは失敗している、だから初期画面が表示されないというのは間違いなさそうです。

XAMPPのインストールを成功させることを目的とした対処は、既に80番ポートを使用しているアプリのポートを80以外に変更するか、アンインストールすることでしょう。

既に動いているapacheをそのまま使いたいのであれば、PHPとMySQLを個別にインストールした方がよいでしょう。

>多分なんですけど、apache2.0.59のhttpd.confファイルのポートを80に設定してしまった
前の回答へのお礼でapache2.2の画面が出ていると書かれていたので80を使用しているのは2.2.11の方ではないでしょうか。設定を確認してみてください。

>xamppってapacheとかMySQLと違ってプログラムの追加と削除とかしないでフォルダだけ削除するだけですよね。
すいません、これはちょっとわからないです。
私はアンインストーラで一括でアンインストールしたので、そこで問題はなかったかと思い質問したのですが、違うケースであれば考えなくて良いのかもしれないです。

ANo.1です。

補足説明ありがとうございます。
ちょっと複雑な状況ですが、いずれにしてもXAMPPのインストールは失敗している、だから初期画面が表示されないというのは間違いなさそうです。

XAMPPのインストールを成功させることを目的とした対処は、既に80番ポートを使用しているアプリのポートを80以外に変更するか、アンインストールすることでしょう。

既に動いているapacheをそのまま使いたいのであれば、PHPとMySQLを個別にインストールした方がよいでしょう。

>多分なんですけど、apache2.0....続きを読む

Qphpのエラーの意味がわかりません、(403)

Win VISTA XAMPP 1.8.0 です。
昨日まで正常に動いていたPHPが今日はエラー表示で全く動作しません。
何故でしょうか。
「Access forbidden!
要求されたオブジェクトのアクセス権がりません。読み込みが許可されていないか、サーバーが
読み込みに失敗したかでしょう。

サーバーの障害と思われる場合はウェブ管理者までご連絡ください。」

Error 403
127.0.0.1 Apache2.4.3(Win32)OpenSSL /1.0.1C PHP/5.4.7

という内容です。

===================================================================
全く原因が不明です。
宜しくお願いします。

Aベストアンサー

すみません、

xampp/apache/error/XAMPP_FORBIDDEN.html.var
これは、ディレクトリ名です。
Windowsであれば
C:\xampp\apache\error\XAMPP_FORBIDDEN.html.var
というファイルを、適当なエディタで開いて、後は前の説明通りに修正していただければ治ると思います。

Qphp形式のファイルはどうやって開くんですか?

ファイル自動収集ソフトを使ったら、「PHP」という形式のファイル(おそらく動画)がいくつかDLされていました。

開くにはどのような方法、またはソフトがいるのでしょうか?Windowsのヘルプを見たらメモ帳で開けるように書いてありましたが無理でした。

Aベストアンサー

ちょっと勘違いされているようですがPHPとは動的なWebページを生成するプログラミング言語のことです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
おそらくDLしたものは拡張子が違うだけだと思います。
それが動画なのであれば拡張子を.aviや.mpgなどに変えてダブルクリックしてみてください。

Qphpにcssを適応させたいのですが?

phpで出力させた結果をブラウズするのに、css指定させたいのですが?

できるのでしょうか?

Aベストアンサー

PHPだから特別な考えはしなくて良いです

PHPはあくまでも、サーバー側で動いて、その結果を出力させるだけです

つまり出力させたHTMLにごくごく普通にCSSを適用させれば良いだけです
又、テクニックとしCSSそのものをPHPで処理させることも可能ですよ

例えば
---------------index.html(又はindex.php)のhead内
<link rel="stylesheet" type="text/css" href="stylecss.php"/>
---------------

------------stylecss.php
BODY {
background-color: #<?php echo $background; ?>;
margin: 0px;
}

A:link {
color: #<?php echo $acollar; ?>;
text-decoration:none;
}
-----------
のようにしてしまって、CSSそのものを動的に生成することも可能です

PHPだから特別な考えはしなくて良いです

PHPはあくまでも、サーバー側で動いて、その結果を出力させるだけです

つまり出力させたHTMLにごくごく普通にCSSを適用させれば良いだけです
又、テクニックとしCSSそのものをPHPで処理させることも可能ですよ

例えば
---------------index.html(又はindex.php)のhead内
<link rel="stylesheet" type="text/css" href="stylecss.php"/>
---------------

------------stylecss.php
BODY {
background-color: #<?php echo $background; ?>;
margin: 0px;
...続きを読む


人気Q&Aランキング