Я пытаюсь загрузить информацию из файла csv с помощью PHP и хочу сохранить содержимое csv (номера мобильных телефонов) в таблице базы данных mysql. Содержимое файла выглядит так:Загрузка CSV-файла в базу данных mysql с использованием php
содержимого CSV файл (индивидуальная запись в одной строки без запятых)
44762126064
447508751
4474669756
44771466603
444584871
445574805
447455471039
44777451345
447460345819
44793342963
44734838672
44752845528
4474537291
44779645078
Я пытаюсь загрузить файл CSV, используя форму и submit.The коду чтения CSV-файл и пытаюсь записать содержимое в тузде table.The проблема в том, что код возвращает все записи csv в одном элементе массива следующим образом:
Array(
[0] => 44762126064 447508751 4474669756 44771466603 444584871 445574805 447455471039 44777451345 447460345819 44793342963 44734838672 44752845528 4474537291 44779645078
);
и вставка всего массива в виде одной записи, а всего лишь одного номера мобильного телефона в строке в таблице mysql.
Код:
if (isset($_POST['submit'])) {
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>";
echo "<h2>Displaying contents:</h2>";
# readfile($_FILES['filename']['tmp_name']);
}
//Import uploaded file to Database
$handle = fopen($_FILES['filename']['tmp_name'], "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$import="INSERT into mobilecsv(phoneMobile,status) values('$data[0]',0)";
mysql_query($import) or die(mysql_error());
}
fclose($handle);
print "Import done";
}
Я попытался explode()
, array_slice()
и т.д., но никто из них не помог мне, чтобы разделить это содержимое массива, чтобы сохранить их в виде отдельных записей/телефонных номеров в базе данных MySQL.
Как я могу разделить индивидуальное содержимое первого элемента массива (как в моем случае), чтобы сохранить их как отдельные отдельные записи, появляющиеся в моем CSV? Я новый программист и буду признателен за вашу помощь в этом отношении. Спасибо
вы пытались взорвать (»», $ данных [0])? – Webice
Если ваш файл действительно является единственным значением для каждой строки, тогда нет необходимости в бизнесе fgetcsv(). просто сделайте '$ lines = file ('whatever.csv'); foreach ($ lines as $ line) {insert into db} ' –
@Webice yes Я попытался, но он не работает – user3489398