Показать сообщение отдельно
Старый 03.11.2011, 14:17 Вверх   #13
Модератор
 
Аватар для Slavok47
Slavok47 вне форума
Доп. информация
По умолчанию

короче так, создаем таблицу с нужным количеством полей, не забываем про поле ID с автоинкриментом
создаем файл PHP с содержимым
PHP код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<
html>
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<
title></title>
</
head>

<
body>
<
form action="/import.php" method="post" enctype="multipart/form-data">
<
label>Выберите файл для импорта:</label><br>
<
input name="file" type="file" size="50"><br>
<
input name="Load" type="submit" value="Load">
</
form>
</
body>
</
html
и файл import.php
PHP код:
<?php
 $db_host 
'localhost';
$db_user 'Юзер';
$db_password 'Пароль к БД';
$database 'Имя БД';

mysql_connect($db_host$db_user$db_password);
mysql_select_db($database);

$url $_FILES["file"]["name"];
echo 
'Запись из файла: <b>'.$url.'</b><br>'// Имя файла

$file_exp explode("."$_FILES["file"]["name"]);
if (
$file_exp[1] != "txt") die("Неправильный формат файла."); // Допустимы файлы только с расширением txt


$handle fopen($url"r"); // Файл txt необходимо положить в папку с обоими файлами php
while ($data fgetcsv($handle3000",")) { // "," тут символ который как разделитель полей в txt, 3000 это количество строк
    
$sql mysql_query ("INSERT INTO info2 
                                    (`поле1`, `поле2`, `поле3`, `поле4`, `поле...`, `поле100`) //Имена всех полей кроме  ID с автоинкриментом
                                    VALUE 
                                    ('
$data[0]', '$data[1]', '$data[2]', '$data[3]', '$data[...]', '$data[100]')" //Все данные для кожного поля
                                    
);
}
fclose ($handle);

// Ниже на экран выводятся спарсенные значения //
echo '<br><br><b>Все записи:</b><br>';
echo 
'<div style="font-size:13px">';
$row 1;
$fp fopen ($url,"r");
while (
$data fgetcsv ($fp3000",")) {
    
$num count ($data);
    print 
"<p> $num поля в линии $row: <br>";
    
$row++;
    for (
$c=0$c $num$c++) {
        print 
$data[$c] . " => ";
    }
}
fclose ($fp);
echo 
"</div>";
?>
и все это заливаем в какую нибудь папку в месте с файлом txt, потом запускаем первый созданный файл php, указываем нужный файл и вперед....

Последний раз редактировалось Slavok47; 03.11.2011 в 14:36..
  Ответить с цитированием
 
Время генерации страницы 0.05373 секунды с 10 запросами