2013-07-15 3 views
-2

Я пытаюсь добавить записи в таблицу базы данных из текстового файла с помощью PHP-скрипта. Текстовый файл содержит 2000 строк, и я хочу, чтобы каждая строка была одной записью в таблице базы данных. Это мой код. Он работает нормально, но ничего не добавляется в таблицу.Добавить записи в таблицу базы данных из файла

<?php 

$link = new mysqli('xxx.xxx.xxx.xx', 'xxxxxx', 'xxxxxxxx', 'xxxxxxxxxxx'); 
if ($link->connect_errno) { 
    die('Failed to connect to MySQL: (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); 
} 
$filename = 'serials.txt'; 
$file = file($filename); 
foreach($file as $line) { 
    $result = $link->query("INSERT INTO mytable SET serial=$line"); 
} 
?> 
+0

Почему бы не использовать LOAD DATA? – Strawberry

+0

Я никогда не слышал об этом и понятия не имею, как его использовать –

+0

Итак, теперь самое подходящее время для изучения, не так ли? – Strawberry

ответ

2
  1. Печать ошибка-сообщения
  2. escape данные
<?php 

$link = new mysqli('xxx.xxx.xxx.xx', 'xxxxxx', 'xxxxxxxx', 'xxxxxxxxxxx'); 
if ($link->connect_errno) { 
    die('Failed to connect to MySQL: (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); 
} 
$filename = 'serials.txt'; 
$file = file($filename); 
foreach($file as $line) { 
    $result = $link->query("INSERT INTO mytable SET serial='" 
      .$link->real_escape_string($line)."'"); 
    if($link->errno) echo($link->errno.": ".$link->error); 
} 
?> 
Смежные вопросы