> プラグイン > cronを使って自動更新(products_class)させたいのですがうまく動作しません |
プラグイン
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
KUNIO |
投稿日時: 2009/1/22 17:07
対応状況: −−−
|
新米 登録日: 2008/12/3 居住地: 投稿: 6 |
cronを使って自動更新(products_class)させたいのですがうまく動作しません PHPとcronすべて初心者です。
EC-CUBEの在庫テーブルをcronを使って自動更新(products_class)させたいのですがうまく動作しません。 3分毎に、upload.php(CSVファイルをMysql UPDATEコマンドする自作プログラム)を実行する単純なものです。ブラウザでのrupload.php実行では動作確認済です。分かる方、ご教授よろしくお願いします。 ※crond内容(システムユーザはftpです) */3 * * * * /var/www/vhosts/takama-web.jp/ec-cube2/upload/csv/upload.php ※ファイル設置場所(パーミッション755) CSVファイル、upload.phpともに同一場所(/httpdocs/ec-cube2/upload/csv)に設置しています ※実行ログ /var/log/cron内容 Jan 22 15:54:01 takama-web crond[5715]: (CRON) chdir(HOME) failed: (No such file or directory) Jan 22 15:54:01 takama-web crond[5715]: (CRON) /var/ftp (No such file or directory) Jan 22 15:54:01 takama-web crond[5715]: CRON (ftp) ERROR: failed to open PAM security session: No such file or directory Jan 22 15:54:01 takama-web crond[5715]: CRON (ftp) ERROR: cannot set security context |
nanasess |
投稿日時: 2009/1/22 17:13
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2314 |
Re: cronを使って自動更新(products_class)させたいのですがうまく動作しません 引用:
ということなので, ftp ユーザーのアカウント情報(vipw コマンドや, /etc/passwd ファイルを確認)や, /var/ftp ディレクトリの存在を確認してみましょう |
KUNIO |
投稿日時: 2009/1/27 15:30
対応状況: −−−
|
新米 登録日: 2008/12/3 居住地: 投稿: 6 |
Re: cronを使って自動更新(products_class)させたいのですがうまく動作しません ご教授ありがとうございます。cronのシステムユーザをdrwebに変更、さらにshでphpを叩いてみました(別の方からご教授)今回はログを見た限りでは3分毎にcronは動いています。しかしtest.shが実行されません。whereisコマンドでphpとshのパス確認もしました。 何で実行されないのか、分かる方のご教授お願いします。
■cron設定 */3 * * * * /var/www/vhosts/test.sh ■test.sh(755) #!/bin/sh /usr/bin/php /var/www/vhosts/takama-web.jp/private/upload.php ■upload.php(755) <?php // **************************** // ** stockのアップロード // ** upadte.php // ** 2009.01.23 K.K // **************************** $srv = "localhost"; $id = "12345";//公開のため仮idです $passwd = "abcdefg";//公開のため仮passwdです $dbn = "dbname";//公開のため仮nameです $tn1 = "dtb_products_class"; $fn1 = "50products_class.txt"; // **feild Name:dtb_products_class $key1[0] = "product_class_id"; $key1[1] = "product_id"; $key1[2] = "classcategory_id1"; $key1[3] = "classcategory_id2"; $key1[4] = "product_code"; $key1[5] = "stock"; $key1[6] = "stock_unlimited"; $key1[7] = "sale_limit"; $key1[8] = "price01"; $key1[9] = "price02"; $key1[10] = "status"; $key1[11] = "creator_id"; $key1[12] = "create_date"; $key1[13] = "update_date"; // ******************** // ** DB接続 // ******************** $db=mysql_connect($srv,$id,$passwd); mysql_select_db($dbn,$db); // ***************************** // ** ファイル設定 // ***************************** $file=fopen($fn1,"r"); while($dat=fgetcsv($file,1000,",")){ // *********************** // ** 更新実行 // ** dtb_products_class // *********************** $sql=""; $sql="UPDATE ".$tn1." SET ".$key1[5]."= ".$dat[5].",".$key1[13]."= '".$dat[13]."' WHERE ".$key1[1]."=".$dat[1]." AND ".$key1[4]."='".$dat[4]."'"; // EUCからSHIFT_JISに変換 for($i=0; $i<count($dat); $i++) { $dat[$i] = mb_convert_encoding($dat[$i],"SJIS","EUC-JP"); } mysql_query($sql,$db); } // ***************************** // ** DB解除 // ***************************** fclose($file); mysql_close($db); $chk = unlink($fn1); ?> |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |