· 10 years ago · May 01, 2016, 12:24 PM
1//DB table structure:
2
3//CREATE TABLE IF NOT EXISTS `test` (
4// `test1` varchar(255) NOT NULL,
5// `test2` varchar(255) NOT NULL
6//) ENGINE=MyISAM DEFAULT CHARSET=utf8;
7
8//test.txt:
9//qwe-rty:qaz-wsx:poi-uyt:plm-koi
10
11// mysqli example
12
13<?php
14
15 $mysqli = mysqli_init();
16 mysqli_options($mysqli, MYSQLI_OPT_LOCAL_INFILE, true);
17 mysqli_real_connect($mysqli,'localhost','user','passwd','test');
18
19 if (mysqli_connect_errno()) {
20 printf("Connect failed: %s\n", mysqli_connect_error());
21 exit();
22 }
23
24 $sql = "LOAD DATA LOCAL INFILE 'test.txt'
25 INTO TABLE test
26 FIELDS TERMINATED BY '-'
27 LINES TERMINATED BY ':'";
28
29 if (!($stmt = $mysqli->query($sql))) {
30 echo "\nQuery execute failed: ERRNO: (" . $mysqli->errno . ") " . $mysqli->error;
31 };
32
33?>
34
35// pdo example
36
37<?php
38
39 $databasehost = "localhost";
40 $databasename = "test";
41 $databaseusername = "user";
42 $databasepassword = "passwd";
43
44 $opt = array(
45 PDO::MYSQL_ATTR_LOCAL_INFILE => 1,
46 PDO::MYSQL_ATTR_READ_DEFAULT_GROUP => 'client' // add local-infile=1 in client section of my.cnf
47 );
48
49 try {
50 $pdo = new PDO('mysql:host=' . $databasehost . ';dbname=' . $databasename , $databaseusername, $databasepassword, $opt);
51 }
52
53 catch (PDOException $e) {
54 die('Error!: ' . $e->getMessage() . '<br/>');
55 }
56
57 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
58
59 $sql = "LOAD DATA LOCAL INFILE 'test.txt'
60 INTO TABLE test
61 FIELDS TERMINATED BY '-'
62 LINES TERMINATED BY ':'";
63
64 $pdo->exec($sql);
65
66?>