phpからmysqlへのinsertでエラーが出て困っております。
LOAD DATA LOCAL INFILEをしたいのですが、
Fatal error: Call to a member function query() on null in /var/www/html/php/IN_DATA_test2.php on line 16
のエラーが解決できません。
$stmt = $dbh->prepare($sql);時点で、dbhの持つ値に問題があるということなのでしょうか。
現在、フォームからの値の入力はできているためドライバ関連のエラーはなく、
sql文単体では問題なく動作していることを確認済みです。
どなたか、お知恵を貸していただけないでしょうか。
<?php try{ $dbh = new PDO('mysql:dbname=GPS;host=tk2-218-18679.vs.sakura.ne.jp', 'root', array(PDO::MYSQL_ATTR_LOCAL_INFILE => true)); print('<br>'); if ($dbh == null){ print('接続に失敗しました。<br>'); }else{ print('接続に成功しました。<br>'); } $dbh->query('SET NAMES utf8'); $sql = 'LOAD DATA LOCAL INFILE "/GPS_log.csv" INTO TABLE test FIELDS TERMINATED BY "," LINES TERMINATED BY "\n";'; $stmt = $dbh->prepare($sql); $stmt->execute(); }catch (PDOException $e){ print('Error:'.$e->getMessage()); die(); } $dbh = null; ?>回答2件
あなたの回答
tips
プレビュー