Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Загрузка данных клиентов из неформатированного текстового (excel, csv) файла в базу данных на PHP
Если у вас переход от одного движка(CMS) к другому или к вам в руки попала база горячих клиентов
и вам просто необходимо срочно ее проспамить загрузить для последующего использования, Вам просто необходим данный скрипт.
Скрипт считает что на одной строке может быть информация только об одном клиенте. Вытаскивает имя, дату рождения, номер телефона, е-mail.
Для проверки работы скипта вставьте в данное поле текст, содержащий телефны и е-mail или загрузите файл:
Исходный код представленного здесь скрипта парсера e-mail адресов и телефонов из неструктурированных данных.
<?
$ss = explode("\n", trim($_POST['data']));
foreach ($ss as $name){
$email = $birthday = $phone = '';
// вытаскиваю д.р.
if (preg_match('|^(.*?)\s(\d{1,2}[\.\,\/\-]\d{2}[\.\,\/\-]\d{2,4})\s(.*?)$|', ' ' . $name . ' ', $arr)){
$name = trim($arr[1] . ' ' . $arr[3]);
$birthday = str_replace(',', '.', str_replace('/', '.', str_replace('-', '.', $arr[2])));
$birthday = "'" . date('Y-m-d', strtotime($birthday)) . "'";
} elseif (preg_match('|^(.*?)\s(\d{4}[\.\,\/\-]\d{2}[\.\,\/\-]\d{2})\s(.*?)$|', ' ' . $name . ' ', $arr)) { // 1986-10-23
$name = trim($arr[1] . ' ' . $arr[3]);
$birthday = "'" . str_replace(',', '-', str_replace('/', '-', str_replace('.', '-', $arr[2]))) . "'";
}
// вытаскиваю мыло
if (preg_match('/^(.*?)\s([a-z0-9_\-\.\+]{1,20}@[a-z0-9\-а-ярстуфхцчщшэюё]+\.(?:[a-z]{2,6}|рф))\s(.*?)$/is', ' ' . $name . ' ', $arr)){
$name = trim($arr[1] . ' ' . $arr[3]);
$email = trim($arr[2]);
}
// вытаскиваю телефон
if (preg_match('|^(.*?)([\+\d\-\(\)]{8,15})(.*?)$|', $name, $arr)){//8-928-199-00-03
$phone = $arr[2];
$name = trim($arr[1] . ' ' . $arr[3]);
}
if(!empty($email)||!empty($phone)){
echo "<br>\nИмя:<b>" . $name . '</b>, телефон: <b>' . $phone . "</b>, д.р.: <b>" . $birthday . '</b>, mail: <b>' . $email.'</b>';
// DB::sql("INSERT IGNORE INTO `" . db_prefix . "users` ( `name`, `tel`, `birthday`, `date0`, `sex`, `email`)
// VALUES ( '" . addslashes($name) . "', '" . addslashes($tel) . "', " . $birthday . ", '" . date('Y-m-d') . "', '1', '" . addslashes($email) . "')");
}
}
?>
Данный скрипт парсинга e-mail адресов используется для e-mail рассылок с помощью: скрипт email рассылки.
.
Прокомментировать/Отблагодарить