Експортване на имеили от phpmyadmin

mantodeus

Member
Имам един Phpbb3 форум и естествено mass email на 36 000 юзера няма как да се прати заради хостинга.Решението доколкото разбрах е един меилинг лист,да си експортна меилите на юзърите и така.И тук идва проблема - намерих някаква команда в phpbb съпорт форумите

Код:
SELECT user_email FROM phpbb_users INTO OUTFILE '/email.csv' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';

но се оказва че не работи.На някой да му хрумва как бих могъл да се оправя с това нещо ?

Поздрави
 
От: Експортване на имеили от phpmyadmin

Добре де, като изтеглиш тези емайли, после как мислиш да ги изпратиш? Някаква програма ли ще използваш?! Защото и на мен ми трябва подобно решение?
 
От: Експортване на имеили от phpmyadmin

Целта ми е да ги вкарам в един CSV файл и после вече ползвам импорта на меилинг скрипта,разпознава си ги и ги вкарва в базата данни.От там нататък вече е лесно...
 
От: Експортване на имеили от phpmyadmin

Заявката си е ок, само трябва да му зададеш файл накъде, където mysql има права за писане и от където можеш да си го вземеш съответно. '/email.csv' е в root директорията - там няма да стане.

Освен това в директорията не трябва да има вече такъв файл - mysql няма да го презапише.
 
От: Експортване на имеили от phpmyadmin

Е и затова се сетих и го пробвах като ползвах -

/home/потребителя/public_html/email.csv

и резултата беше същия :

#1045 - Access denied for user 'xxx'@'localhost' (using password: YES)
 
От: Експортване на имеили от phpmyadmin

public_html вероятно е собственост на твоя юзер, а сървъра е с друг. няма да стане и там. направи една public_html/test и и сложи 777 права и опитай там
 
От: Експортване на имеили от phpmyadmin

Добра идея,но за жалост не проработи и тя.

INTO OUTFILE '/home/.../public_html/test/email.csv'

Странното е че го пробвах на още един хостинг,преместих само тази таблица users и ефекта беше същия...
 
От: Експортване на имеили от phpmyadmin

Добре де, а този емйлинг скрипт през къде изпраща пощата. Този сървър на хоста ти няма ли ограничение за изпращане на емайл/час?
 
От: Експортване на имеили от phpmyadmin

Добре де, а този емйлинг скрипт през къде изпраща пощата. Този сървър на хоста ти няма ли ограничение за изпращане на емайл/час?

Има - решението или да направиш една cron job,така на всеки час си изпраща максимум меили докато не изпълни цялата заявка.Може да ги праща 2-3 дена,но в крайна сметка ще стане.

Другия вариант е да ползваш някакъв меил акаунт при който няма лимит.

vaskoa явно това е причината да не става номера.Дали има някакъв друг начин да ги изкарам тея имеили :(
 
От: Експортване на имеили от phpmyadmin

Може би излишен въпрос, но опита ли с phpmyadmin :) ? Експортиране -> CSV Данни -> Компресия gzip.

Компресиран едва ли ще е голям файл и ще може да го свалиш. Другия вариант - с един php скрипт ще се издъмпят за минутка.
 
От: Експортване на имеили от phpmyadmin

С phpmyadmin не е работа понеже не мога само меилите да извадя,вади ми цялата таблица.Поне аз не знам как мога само меилите да си извадя :)

Остава варианта с един php скрипт,сега трябва да поразровя да видя как може се напише такова нещо,че php-то не ми се отдава много.Попаднах на това,но нещо не ми вдъхва доверие :) :

Код:
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

// Enter your username below, ie $username = 'Nelsaidi'
$username = '<username>';

if($user->data['username'] == $username){   
    $sql = 'SELECT user_email FROM phpbb_users';
    $result = $db->sql_query($sql);
    while ($data = $db->sql_fetchrow($result)) {
      echo ','.$data['user_email'].',';
      echo '<br>';
    }
}else{
    header("HTTP/1.0 404 Not Found");
    exit;
}
?>
 
От: Експортване на имеили от phpmyadmin

давай с phpmyadmin, направи си една темп таблица с една такава заявка:

create table _temp select EMAIL from TABLE;

после си я експортирай :)
 

Горе