こんにちは。
PHP初心者です。
環境はWindousXP PHP5 DBはPostgre(多分。)です。
今、PHPでexecを使って外部プログラムを走らせたいのですが、失敗しているようで、戻り値はなにしても1が返ってきます。
処理としては、
(PHP)
$bat = 'C:/Documents and Settings/Administrator/デスクトップ/test/test.bat'
exec($bat, $out, $ret);
echo $ret;
(batの中身)
sqlplus id/pass@test @"C:/Documents and Settings/Administrator/デスクトップ/test/処理.txt"
(処理.txtの中身)←coldfusionで書かれています。
-- 対象外のデータを削除する
delete from table where knd = 0;
commit;
exit;
という感じです。
わざと処理.txtの中身を壊したり、execではなくsystemやpassthruを使ったり色々試しましたが、$retは1のままで、$outの中身もないので実行されてないような気がします。
なぜ実行されないのか、処理.txtが正常に実行されたのか戻り値を取得したいです。。
とても初歩的な質問で申し訳ないのですが、ご教授よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
なんとも言えませんが、webインタフェースでbatファイルを実行
するのはどうかと・・・
普通に、RDBにアクセスするという選択はないのでしょうか?
No.1
- 回答日時:
var_dump($hoge)を使って、デバッグ(風)に変数の中身を確認しながら進めてみてはいかがでしょう?
この回答への補足
返信ありがとうございます。
var_dumpはPHPの中で使うということでしょうか?
$retはint(1)、$outはからっぽです;;
coldfusionのソースは以前から使われているもので、一連の処理をPHPで一括化しようと思い、PHPに組み込んでいます。
coldfusionはサッパリわかりません。。
DOSのコマンドを実行したDOS配下にbatファイルを置いたらうまくいきました!
今思うと当然か~て感じですが、事前にbatファイルの実行場所にcdしておかなかったのが原因でした;
(bat自体動いてなかったようです。)
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) ファイル名の一部をbatで変更したい batファイルを使って、以下のようにファイル名の一部を変更した 3 2023/02/21 20:09
- PHP ECCUBE4のページ管理でPHPを実行させたい 1 2023/04/06 11:42
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Visual Basic(VBA) VBA ステータスバー DoEvents 1 2023/03/30 12:22
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ASP.NET(VB)VBソースからJavas...
-
phpのひな形、フレームワー...
-
読み込み中に「Now Loading」を...
-
入力されたURLから、そのページ...
-
サイト作りについて
-
jsonテキストデータの並び替え...
-
saved from url=(0013)abou
-
大量のデータを表として展開す...
-
【Ajax】改行を含めたデータを...
-
ajaxでhtmlを返して画面に描画…...
-
suEXECとパーミッションの関係...
-
AJAX通信のエラー処理について
-
【JavaScript】confirmのボタン...
-
gifcatの挙動について
-
Shell関数?非同期?
-
アップロードの完了前に容量を...
-
enctype="multipart/form-data"
-
[JavaScript] preven...
-
HTMLでDBからデータを表形式で...
-
8ビットダウンカウンタをVerilo...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ASP.NET(VB)VBソースからJavas...
-
sleepの負荷
-
PHPでフォームの自動入力できま...
-
ブラウザ閉じたらサーバー処理...
-
JSTLを利用してJavascriptの結...
-
php ob_flushが全く動作しない
-
cakephp2とsmartyの表示が遅い
-
掲示板の荒らし対策
-
読み込み中に「Now Loading」を...
-
呼び出し元のURLを知りたいのです
-
jQueryのAjaxで通信の途中結果...
-
include 再読み込み
-
PHPで一定時間が経過すると処理...
-
携帯でも表示されるカウントダウン
-
PHPでメッセージボックス表示
-
処理中インジケータの表示
-
PHPを用いてPOSTし、リダイレク...
-
10秒毎に同じプログラムを繰り...
-
PHPのプログラムが同時に呼び出...
-
XEONについて
おすすめ情報