- ベストアンサー
プログラムが実行されない?
困っている内容を、簡単な例えで説明します。 PHPで「あるフォルダ内のwavファイルから、wmaとraファイルを変換作成する」 というプログラム(musicfile.php)を作り、バッチの実行ファイルを作成しました。勿論、変換に必要なexeは用意してあります。 バッチファイルの内容は『php musicfile.php』という単純なものになると思います。 さて、このバッチのショートカットを作成し、ブラウザ画面のボタンからそのショートカットを実行するように設定したのですが、思うように動作しません。 おかしいと思い、コマンドプロンプト画面から実行してみると、正常に動作します。 全く原因が解らないのですが、これはプログラムの記述が悪いのでしょうか? それとも、PHPの実行する環境(php.iniやApacheの設定)が悪いのでしょうか? 宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> このバッチのショートカットを作成 Windows あのショートカットでしょうか? > コマンドプロンプト画面から実行 それは直接バッチファイルを実行されたのでしょうか? > これはプログラムの記述が悪いのでしょうか? ショートカットではなく、PHP のコードに system や exec を記述する方法がよろしいかと思います。 PHP: system - Manual http://jp2.php.net/system PHP: プログラム実行 - Manual http://jp2.php.net/exec
その他の回答 (1)
- masa6272
- ベストアンサー率66% (93/140)
もう少し、具体的な情報はありませんか? ショートカットって、どのように記述してます? <a> タグですか? href属性の具体的な値は? system、execは、便利ですが、使い方によってはコマンドインジェクション攻撃の対象になることがありますので、使用には注意が必要です。
補足
ショートカットは普通に(?)実行ファイルのあるパスを記述しています。 hrefに特に属性(?)の値は指定していません。 自身でも分からない事だらけで、中途半端な質問をしてしまい、すみません。 勉強し直してきます。
補足
ショートカットは、Windowsのショートカットです。 コマンドプロンプトからの実行は、直接バッチファイルを実行しました。 今回の自分の現象は、いくつか同じようにバッチファイルを実行しているのですが、あるバッチファイルでは正常に動作したり、 あるファイルではしなかったりと、現象が一致しないので困っていました。 ご紹介のサイトで、もう一度、一から勉強し直してみます。 ありがとうございました。