下記URIで記載された手順でphp5.3.6.0をインストールして、ハンドラマッピングの作成まで行い、
http://www.php.net/manual/ja/install.windows.iis …
下記プログラムを実行することはできました。

<html>
<head>
<title>
日本語版
</title>
</head>
<body>

<?php
if (strstr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 'ja')) {
?>
日本語対応しています。
<?php
} else {
?>
This site is available in Japanese only.
<?php
}
?>

</body>
</html>

しかしながら、下記のように、echoを使用すると、IIS で要求は受信されましたが、要求の処理中に内部エラーが発生しました。

<html>
<head>
<title>
日本語版
</title>
</head>
<body>

<?php
if (strstr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 'ja')) {
echo "日本語対応しています。\r\n"
} else {
echo "This site is available in Japanese only.\r\n"
}
?>

</body>
</html>

エラーの原因として、以下の可能性があるようです。
(1)IIS が Web サイトまたはアプリケーションの web.config ファイルにアクセスできません。NTFS アクセス許可が正しく設定されていない場合に、この現象が発生します。→phpファイルの上層であるinetpubフォルダをフルコントロールにしてみましたが、駄目でした。
(2)IIS が Web サイトまたはアプリケーションの構成を処理できません。 →SJISユーザ用にphp.iniを設定してみましたが、駄目でした。
(3)その認証されたユーザーには、この DLL を使用するアクセス許可がありません。→PHPフォルダ内のdllファイルであると仮定して、PHPフォルダをフルコントロールにしてみましたが、駄目でした。
(4)要求はマネージ ハンドラにマップされていますが、.NET 拡張機能がインストールされていません。→インストールしてみましたが、駄目でした。

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

A 回答 (2件)

>echo文やprint文の末尾には「:」が要る。

てゆか、文の文末には必ず「;」が要る。

タイプミスした。

>echo文やprint文の末尾には「;」が要る。てゆか、文の文末には必ず「;」が要る。

コロンじゃなくセミコロンね。
    • good
    • 0
この回答へのお礼

早速のご回答どうもありがとうございました。
Eclipseをインストールして自分でも発見できたのですが、遅かったです。

お礼日時:2011/04/28 03:23

echo文やprint文の末尾には「:」が要る。

てゆか、文の文末には必ず「;」が要る。

× echo "日本語対応しています。\r\n"
○ echo "日本語対応しています。\r\n";

if文などのブロック文を書く場合のみ、文末には「;」が要らない。
    • good
    • 0

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

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

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

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

Qmultiple definitionというエラー

現在Ubuntu LinuxのgccでC言語のプログラムをやっています。

https://sourceforge.jp/projects/cc1101driver/scm/svn/blobs/2452/trunk/20140411/code.h

このツリーのcode.hに ”const sig_code2_t PVC_TCP_SIG_CODE[100] = {” というコードを追加してmakeを行うと次のようなエラーが出て実行ファイルが出力されません。



(エラー内容)

---------------(中略)-----------------
gcc -o exe main.o event.o env.o audio.o task.o comm.o menu_show_status.o mount.o net.o misc.o -lpthread
event.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
env.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
audio.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
task.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
comm.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
mount.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
net.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
misc.o:(.rodata+0x0): multiple definition of `PVC_TCP_SIG_CODE'
main.o:(.rodata+0x0): first defined here
collect2: error: ld returned 1 exit status
make: *** [exe] Error 1






この const sig_code2_t PVC_TCP_SIG_CODE[100] = {をコメントアウト正常にビルドできるのですが、




この問題を解決するにはどうすれば良いのかご教示頂きますようお願い致します。

現在Ubuntu LinuxのgccでC言語のプログラムをやっています。

https://sourceforge.jp/projects/cc1101driver/scm/svn/blobs/2452/trunk/20140411/code.h

このツリーのcode.hに ”const sig_code2_t PVC_TCP_SIG_CODE[100] = {” というコードを追加してmakeを行うと次のようなエラーが出て実行ファイルが出力されません。



(エラー内容)

---------------(中略)-----------------
gcc -o exe main.o event.o env.o audio.o task.o comm.o menu_show_status.o mount.o net.o misc.o -lpthread
event.o:(.rodat...続きを読む

Aベストアンサー

お約束の「ヘッダに実体を定義してはいけない」ってヤツです。

code.hに記述した内容はall_includes.hに適用されます。
all_includes.h内で#include "code.h"していますからね。

で、all_includes.hの内容はそれぞれ
audio.c、comm.c、env.c、event.c、main.c、misc.c、mount.c、net.c、task.cに適用されます。
つまり、code.hに記述した内容も
audio.c、comm.c、env.c、event.c、main.c、misc.c、mount.c、net.c、task.cに適用されます。
それぞれのオブジェクトファイルにPVC_TCP_SIG_CODE[100]が存在します。

リンクする段階でどのオブジェクトファイルのPVC_TCP_SIG_CODE[100]を使用したらいいのでしょうか?????
というエラーです。

extern宣言して、実体をどこかのソースファイルのみに記述する。
というのが一般的な対処方法です。
# static宣言にすればとりあえずリンクは通るかもしれませんが…無駄が出ますねぇ。
# 今回はconstなので、メモリに無駄が出るだけ…で済むかと思われますが。
http://d.hatena.ne.jp/saitodevel01/20110321/1300685958

お約束の「ヘッダに実体を定義してはいけない」ってヤツです。

code.hに記述した内容はall_includes.hに適用されます。
all_includes.h内で#include "code.h"していますからね。

で、all_includes.hの内容はそれぞれ
audio.c、comm.c、env.c、event.c、main.c、misc.c、mount.c、net.c、task.cに適用されます。
つまり、code.hに記述した内容も
audio.c、comm.c、env.c、event.c、main.c、misc.c、mount.c、net.c、task.cに適用されます。
それぞれのオブジェクトファイルにPVC_TCP_SIG_CODE[100]が存在します。...続きを読む

QPHPのエラーで画面に下記エラーがでるのですが下記エラーはどんな内容で

PHPのエラーで画面に下記エラーがでるのですが下記エラーはどんな内容でどうすれば直るのでしょうか。

Loading font failed! Please use new SWFBrowserFont(string:fontname) for player/browser fonts. in

Aベストアンサー

字体をロードするのは失敗しました! プレーヤー/ブラウザ字体コネに、新しいSWFBrowserFont(ストリング: fontname)を使用してください。
↑エラー内容はこんな感じです。

私にはエラーが直る方法はわからないかもしれませんが、
こういう質問をするときは、プログラムのソースも公開したほうがいいと思います。
そうすれば、PHPをよく知っている方にきちんとした回答をもらえるはずです。

Qbear the definitions

bear the definitions
という場合、このbearはどういう訳となるのでしょうか?


Bold and capitalized terms not defined herein bear the definitions in the Competition Packet.
という文で使われていました。

「ここで定義していない太字と大文字表記は、Competition Packetに定義されている」という意味でしょうか?

Aベストアンサー

yes

QCentOS5.3に、apache2.2.15とphp5.3.2とmy

CentOS5.3に、apache2.2.15とphp5.3.2とmysql5.0.45をインストールして、
phpで下記のプログラムを書いて、mysqlへ接続しようとしましたが、
Call to undefined function mysql_connectというエラーが表示されて、
接続できません。

=====================================================
<?php

$con = mysql_connect("localhost");

if (!$con) {

echo "Error:接続できませんでした";

}else{
echo "接続ID=$con";

}

?>

==============================================

phpのconfigureのときに、
--with-mysql=/usr/local/mysqlを入れてないのですが、
mysqlはCentOS5.3をインストールしたときに、
同時にインストールしたものなので、/usr/local/mysql配下なんてありません。

この場合は、一度、mysqlをアンインストールしてから、
再度、ソースからmake installしないと、ダメなのでしょうか。

アンインストールする方法もちょっと不安なのですが、
$ rpm -qa | grep mysqlのコマンドで、
でてきた↓これを、rpm -eコマンドで、アンインストールして、

mysql-5.0.45-7.el5
libdbi-dbd-mysql-0.8.1a-1.2.2
mysql-connector-odbc-3.51.12-2.2
mysql-5.0.45-7.el5
mysql-server-5.0.45-7.el5

/usr/bin配下のmysql関連のファイルもrmコマンドで消すのでしょうか?

ソースからmake installしてないので、/usr/local配下には、mysqlの
ファイルは無いようですが、他にも、削除すべきファイルはありますでしょか?

よろしくお願いします。

CentOS5.3に、apache2.2.15とphp5.3.2とmysql5.0.45をインストールして、
phpで下記のプログラムを書いて、mysqlへ接続しようとしましたが、
Call to undefined function mysql_connectというエラーが表示されて、
接続できません。

=====================================================
<?php

$con = mysql_connect("localhost");

if (!$con) {

echo "Error:接続できませんでした";

}else{
echo "接続ID=$con";

}

?>

==============================================

phpのconfigureのときに、
-...続きを読む

Aベストアンサー

PHP経由でデータベースにアクセスしているようですが
その前にmysql単体でアクセス出来ているか確認すべきです。

もしかしたら、RPMパッケージとソースからのコンパイルが混在し、PATH指定がおかしいのかも知れません。
PHPのconfigファイルの記述の可能性もありますし、切り分けが大切かと思います。

1)Apacheは動作している。
2)PHPが動作している。
3)mysql単体で作業ユーザーが存在し、データエースが作れる、操作できる
   ←ここがおかしい可能性
4)PHP経由でmysqlが操作できる
   ←ここがおかしい可能性

症状から、コンパイルしなおす必要はなく、PHPのConfigファイルの記述を変えれば動作するのではないでしょうか。
PATHはmysqlのライブラリを検索すれば、出てくると思います。

Qウィンドウズのアップデートで10月20日に、Definition Up

ウィンドウズのアップデートで10月20日に、Definition Update for wWindows Defender-KB015597(Definition 1.93.26.0)が2回インストールされましたが、そのあとにもう一つ「更新プログラムをインストールしています(50パーセント完了)」とありますが、今日で3日連続表示され、インストールが進みません。なにか解決方法はないでしょうか?PCは初心者クラスです。よろしくお願いします。

Aベストアンサー

>今日で3日連続表示され、インストールが進みません。
ちょっと状況がつかめません。
毎日の起動時に同じ内容が表示されることが3回続いた、ということでしょうか。それとも、72時間の間ずっと「(50パーセント完了)」の状態なのでしょうか。

前者なら
http://menushowdelay.blog13.fc2.com/blog-entry-523.html
とその中のリンクを。
後者なら、とりあえず再起動しましょう。

QOn Error GoTo でエラーが発生する

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1

ErrorTrap1:

On Error GoTo 0

   Do
   On Error GoTo ErrorTrap2
      '-エラーの発生するコード 2
   On Error GoTo 0
   Loop

ErrorTrap2:

End Sub

しかし、以下のようにSubで二つに分けるとエラーは出ません。

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1

ErrorTrap1:

On Error GoTo 0

Call Macro2

End Sub
Sub Macro2()

    Do
     On Error GoTo ErrorTrap2
      '-エラーの発生するコード 2
    On Error GoTo 0
    Loop

  ErrorTrap2:

End Sub

「On Error GoTo 0」がうまく解除できていないのかと思い、いろいろ試してみました。
しかし、どういった理由かはわかりませんでした。
「On Error GoTo」は、Subでは、ひとつしか使えないのでしょうか。

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1

ErrorTrap1:

On Error GoTo 0

   Do
   On Error GoTo ErrorTrap2
      '-エラーの発生するコード 2
   On Error GoTo 0
   Loop

ErrorTrap2:

End Sub

しかし、以下のようにSubで二つに分けるとエラーは出ません。

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1

ErrorTrap1:

On Error GoTo 0

Call Macro2

End Sub
Sub Macro2()

    Do
     On Error G...続きを読む

Aベストアンサー

エラー処理の中でOn Error GoToを記述することはできません。


エラー処理の基本的な構造は、

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1
On Error GoTo 0

Exit Sub

ErrorTrap1:
  'エラー処理
  Resume Next

End Sub


エラー処理が2つある場合は、

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1
On Error GoTo 0

Do
  On Error GoTo ErrorTrap2
    '-エラーの発生するコード 2
  On Error GoTo 0
Loop

Exit Sub

ErrorTrap1:
  'エラー処理1
  Resume Next

ErrorTrap2:
  'エラー処理2
  Resume Next

End Sub


Resume Next でエラーが発生した行の次の行から再開します。
Resumeには他の構文もありますので、調べてみてください。

エラー処理の中でOn Error GoToを記述することはできません。


エラー処理の基本的な構造は、

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1
On Error GoTo 0

Exit Sub

ErrorTrap1:
  'エラー処理
  Resume Next

End Sub


エラー処理が2つある場合は、

Sub Macro1()

On Error GoTo ErrorTrap1
    '-エラーの発生するコード 1
On Error GoTo 0

Do
  On Error GoTo ErrorTrap2
    '-エラーの発生するコード 2
  On Error GoTo 0
Loop

Exit Sub

...続きを読む

QPHP下記エラーメッセージ解決法について

Parse error: syntax error, unexpected T_STRING in /home/**パス名***/kanrisha/dis_tbl_year.php on line 32 と何度修正しても32と出ます。以下飛び先実行プログラム(テーブルの表示)。
<?php
/* 登録年度一覧表示 dis_tbl_year.php*/
session_start();
print <<<EOD
<HTML>
<HEAD>
<TITLE>tbl_yearの表示</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset="Shift_JIS">
</HEAD>
<BODY BGCOLOR="#E6E6FA" text="#000066" link="#A020F0" body alink="#FF00FF" body vlink="#9400D3">
EOD;
//データベース関連のデータをインクルード
require_once("dbini.php");
//MySQLに接続します
$con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD);
mysql_select_db("○○○");
$sql = "select * from _year order by year_id";
$result = mysql_query($sql); // select を実行
if ($result == false){
printf("SQL:\"$sql\"の実行に失敗しました。");
exit;
}
$rows = mysql_num_rows($result); //行数を取得
printf("<CENTER><H2><登録年度一覧></H2></CENTER>");
print("<table border=\"1\" align=\"center\">\n");
print("<TR><TH>年度ID</TH><TH>年度</TH></TR>\n");
if ($rows > 0){
for ($j = 0;$j < $rows;$j++) {
print("<FORM ACTION=\>"hensyu_year.php\" METHOD=\"POST\" TARGET=\"right\">");
$data = mysql_fetch_object($result);
$year_id = $data->year_id;
$year = $data->year;

print("<TR>");
print("<TD>$year_id</TD>");
print("<TD>$year</TD>");
以下部分省略
}
}
?>
</BODY>
</HTML>

Parse error: syntax error, unexpected T_STRING in /home/**パス名***/kanrisha/dis_tbl_year.php on line 32 と何度修正しても32と出ます。以下飛び先実行プログラム(テーブルの表示)。
<?php
/* 登録年度一覧表示 dis_tbl_year.php*/
session_start();
print <<<EOD
<HTML>
<HEAD>
<TITLE>tbl_yearの表示</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset="Shift_JIS">
</HEAD>
<BODY BGCOLOR="#E6E6FA" text="#000066" link="#A020F0" body alink="#FF00FF" body vlink="...続きを読む

Aベストアンサー

print("<FORM ACTION=\>"
とありますが、\>" でなく >\" じゃないですか。

Qステレオミキサーの「realtek high definition a

ステレオミキサーの「realtek high definition audio 6.0.1.5490」より新しいバージョンのものはありますか?更新したいので。

Aベストアンサー

こんばんは。

現状ですと、[R2.47]の"6.0.1.6083"が最新のようです。
RealtekのOHPからダウンロードできます。
http://www.realtek.com.tw/downloads/downloadsCheck.aspx?Langid=4&PNid=24&PFid=24&Level=4&Conn=3&DownTypeID=3&GetDown=false

QPHP5.3での括弧について

PHP5.3では、PHPを記述する際に使用する括弧を<?php~?>にしなければならないのでしょうか。
http://www.ajaxmail.jp/
というサイトで配布されているPHPスクリプトに、
<?= $key ?>
という記述があり、テスト送信するとフォームの中身ではなくそれがそのままメールに送信されてしまいます。
これを回避する方法はあるのでしょうか。
それとも、5.3の仕様なのでしょうか。

Aベストアンサー

<?= $key ?>

<?php echo $key ?>
と同じです。
ちなみに、<?phpは <?でも同じです。

後はPHPではなく、HTMLとJavaScriptの問題だけですね。
ソースはみていませんので・・・


人気Q&Aランキング

おすすめ情報