【问题标题】:How to upload a user.csv in Sentry Laravel如何在 Sentry Laravel 中上传 user.csv
【发布时间】:2015-11-07 05:27:01
【问题描述】:

我目前在我的 Laravel 项目中使用 Sentry。还有 Goodby CSV,它使用 PDO 上传 CSV 文件并将数据添加到我的数据库中。

这是我上传用户的控制器,它可以工作,但问题在于如何对密码进行哈希处理。

public function postUploadUsers()
{
    $csv = Input::file('file');
    $pdo = new PDO('mysql:host=localhost;dbname=******', '******', '*******');

    $config = new LexerConfig();
    $lexer = new Lexer($config);

    $interpreter = new Interpreter();

    $interpreter->addObserver(function(array $columns) use ($pdo) {
        $stmt = $pdo->prepare('INSERT INTO users (email,username,password,permissions,activated,activated_at,code,first_name,last_name,cname) VALUES (?,?,?,?,?,?,?,?,?,?,?)'); 

        $stmt->execute($columns);
    }); 

    $lexer->parse($csv, $interpreter);
    return Redirect::to('home');
}

或者有更好的替代 CSV 上传方式?

【问题讨论】:

    标签: php laravel csv pdo cartalyst-sentry


    【解决方案1】:

    或者你可以使用这个包:https://github.com/Maatwebsite/Laravel-Excel 不需要配置数据库,你可以导入 CSV 文件来管理数据。

    【讨论】:

    • 感谢您的回复 H. Davila,如果我使用 laravel-excel,我如何使用哨兵哈希对密码进行哈希处理。
    【解决方案2】:

    我做到了,我能够使用 laravel-excel 上传我的用户(感谢 H Davila) 这就是我所做的;

    public function home()  {
    Excel::filter('chunk')->load('user.xls')->chunk(250, function($reader)
    { // get data
    $results = $reader->get();
    foreach($results as $row)
    {
    // do stuff
    Sentry::register(array(
         //sentry register syntax
    
        ));
        }
    }
    }
    

    【讨论】:

      猜你喜欢
      • 2021-01-13
      • 2013-08-03
      • 2014-01-26
      • 2021-03-26
      • 2020-01-01
      • 2021-03-09
      • 2019-05-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多