[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Загрузка из txt
Ilya_21
Народ, всем привет. Поделитесь скриптиком если у кого есть. Нужно загружать данные в базу данных mysql из текстового файла. Всего четыре поля

Структура:
Имя Фамиля Отчество Город

P.S. без всяких проверок на существующие, просто загрузить файл и что бы он вставил в базу. Жду помощи



Спустя 8 минут, 12 секунд (25.12.2009 - 13:10) Stuff_f написал(а):
а зачем txt файлик

Спустя 39 секунд (25.12.2009 - 13:11) Stuff_f написал(а):
если данные водятся засчет формы то сразу же из формы и загружй в sql базу

Спустя 9 минут, 40 секунд (25.12.2009 - 13:20) VolCh написал(а):
Ilya_21 ну элементарный же скрипт, буквально несколько строк , неужели самому совсем ничего делать не хочется?
Алгоритм
1. открываем файл (fopen), иницализируем БД (mysql_connect, mysql_select_db)
2. начало цикла(while) - читаем (fegts) строку пока есть
3. разбиваем ее на части по пробелу (explode)
4. заносим в БД (mysql_query)
5. конец цикла
6. закрываем всё, что открыли smile.gif

Спустя 4 минуты, 27 секунд (25.12.2009 - 13:25) Stuff_f написал(а):
вообще не пойму, зачем усложнять себе жизнь??? когда элеминтарно можно сделать это и через няпрямую из формы dry.gif

Спустя 19 минут, 33 секунды (25.12.2009 - 13:44) Ilya_21 написал(а):
Цитата (Stuff_f @ 25.12.2009 - 10:25)
вообще не пойму, зачем усложнять себе жизнь??? когда элеминтарно можно сделать это и через няпрямую из формы dry.gif

Можно, через форму это и так сделано. Но так же нужно и загружать txt файликом. Клиенты присылают просто множество записей в файле, легче его вставить и вуаля.

Спустя 4 минуты, 44 секунды (25.12.2009 - 13:49) glock18 написал(а):
Stuff_f
по-твоему, проще было бы перебивать каждую строку файла вручную?

Спустя 1 минута, 49 секунд (25.12.2009 - 13:51) Ilya_21 написал(а):
Цитата (VolCh @ 25.12.2009 - 10:20)
Ilya_21 ну элементарный же скрипт, буквально несколько строк , неужели самому совсем ничего делать не хочется?
Алгоритм
1. открываем файл (fopen), иницализируем БД (mysql_connect, mysql_select_db)
2. начало цикла(while) - читаем (fegts) строку  пока есть
3. разбиваем ее на части по пробелу (explode)
4. заносим в БД (mysql_query)
5. конец цикла
6. закрываем всё, что открыли smile.gif

элементарный, но тут название борда "для новичков", а значит высказывания типа "элементарный" не красиво высказывать =) Пункты 1,4,5,6 - действительно элементарны а вот именно 2 и 3 пункт вызывает у меня проблему. Можно по подробнее описать используя свои примеры.

Спустя 1 минута, 46 секунд (25.12.2009 - 13:53) DedMorozzz написал(а):
прочитай про ф-ю експлоид. есть разделитель и делимое. В мануале очень подробно и с примерами описано. действительно ничего сложного

Спустя 1 минута, 27 секунд (25.12.2009 - 13:54) Ilya_21 написал(а):
Цитата (glock18 @ 25.12.2009 - 10:49)
Stuff_f
по-твоему, проще было бы перебивать каждую строку файла вручную?

А перебивать ничего не нужно. Клиенты уже в нужном виде присылают.

Пример реальный:

"перед словом" "слово" "после слова" "статья"

причем все четыре данных разделены табуляцией так как в поля могут быть внесены словосочетания. Так что прошу помочь, опишите второй и третий пункт

Спустя 4 минуты, 27 секунд (25.12.2009 - 13:59) Ilya_21 написал(а):

<?php
require_once("../php/connectmysql.inc");
require_once("menu.inc");

$dbh=connectmysql();

print "<HTML>
<body><center>"
;

$txtfile=$_FILES['txtfile']['name'];
$txtfiletmp=$_FILES['txtfile']['tmp_name'];
if ($txtfile)
{
$oldtekpath=getcwd();
chdir($gl_pathimgtmp);
$newtekpath=getcwd();
if (!move_uploaded_file($txtfiletmp,"$newtekpath/$txtfile"))
{
print "<font color=red><b>Ошибка при перемещении файла в директорию $newtekpath</b></font>";
menu();
exit;
}
chmod("$newtekpath/$txtfile",0666);
chdir($oldtekpath);
}
else
{
print "<font color=red><b>Не выбран текстовый файл импорта</b></font>";
menu();
exit;
}

$fd=fopen("$gl_pathimgtmp$txtfile", "r");
while ($line=fgets($fd, 100000))
{
$sth=mysql_query("INSERT INTO seo (fkey,key,lkey,stat) VALUES ()",$dbh);

}
fclose($fd);


print "<p>Импортировано</center>";
menu();


?>




В принципе вот что у меня есть... Проблема только в том: Как проверить есть ли в файле что-то и если есть то разделить табуляторы и вставить в базу

Спустя 2 часа, 18 минут, 57 секунд (25.12.2009 - 16:17) PandoraBox2007 написал(а):
плохо что ты не работаешь с базами postgresql там можно за считаные секунды гиговые дампы слить и обратотать

Спустя 24 минуты, 41 секунда (25.12.2009 - 16:42) Ilya_21 написал(а):
Цитата (PandoraBox2007 @ 25.12.2009 - 13:17)
плохо что ты не работаешь с базами postgresql там можно за считаные секунды гиговые дампы слить и обратотать

В моих планах начать работать, но не со своими проектами, так как их много и переводить все долго и просто безнадежно. Я планирую новые проекты с использованием поста


_____________
Я нашел 1000 неверных способов решения, осталось найти 1 верный >> Женщины зло нашего мира >> Не хочу жену, она разгонит моих потенциальных "жен"
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.