PHP経由でLOAD DATA LOCAL INFILEを実行すると問題が発生しました。PHP:LOAD DATA LOCAL INFILEが禁止されています
PDOStatement::execute(): LOAD DATA LOCAL INFILE forbidden in /blablabla
クエリは、直接MySQLで働いているが、それはPHPで何の仕事をしていません。
私は、MySQLから私のlocal_infileをチェックし、それはokです:
SHOW GLOBAL VARIABLES LIKE 'local_infile'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | local_infile | ON | +---------------+-------+ 1 row in set (0.00 sec)
は、そのことについての質問いくつか他の人がありますが、私は、ソースコード(PHPコードで非常にPDOの設定)を変更することはできません。 LOAD DATA LOCAL INFILE forbidden in... PHP
EDIT:私は、私の場合にはPDOを構成する方法を見つけて、私はPDOでPDO :: MYSQL_ATTR_LOCAL_INFILE => trueオプションを追加しました。
私は他のエラーを得た:
[13:10:16] SQLSTATE[42000]: Syntax error or access violation: 1148 The used command is not allowed with this MySQL version, query was: LOAD DATA LOCAL INFILE '/tmp/export_cat_28.csv' REPLACE INTO TABLE tmp_pimgento_entities_category FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 LINES;
クエリはまだ直接MySQLで動作します。
アイデア?おかげさまで
正確にどのパスを使用しますか? (私はそれがblablaではないと思う^^)。あなたは 'dirname(__ FILE __)。 '/'。Your_Path'を使ってみることができますか? – Xenofexs
これは私のプロジェクトへのパスです。ここでは絶対パス: 警告:PDOStatement :: execute():/ home/soann-elosi/Documents/magento2project/vendor/magento/zendframework1/library/Zend/Db/StatementでLOAD DATA LOCAL INFILEが禁止されています。 /Pdo.php on line 228''' – SirBigoo
mysqlユーザにFILE権限が設定されていますか? –