slim php framework image upload put database

前端 未结 2 1097
隐瞒了意图╮
隐瞒了意图╮ 2021-01-31 22:48

I am new to slim php framework, I want to upload an image and put the file name in the database via POST, can some one kindly give me some example code.

相关标签:
2条回答
  • 2021-01-31 23:50

    Here's the router:

    $app->post('/', 'uploadFile');
    

    this will point to the function below:

    function uploadFile () {
        if (!isset($_FILES['uploads'])) {
            echo "No files uploaded!!";
            return;
        }
        $imgs = array();
    
        $files = $_FILES['uploads'];
        $cnt = count($files['name']);
    
        for($i = 0 ; $i < $cnt ; $i++) {
            if ($files['error'][$i] === 0) {
                $name = uniqid('img-'.date('Ymd').'-');
                if (move_uploaded_file($files['tmp_name'][$i], 'uploads/' . $name) === true) {
                    $imgs[] = array('url' => '/uploads/' . $name, 'name' => $files['name'][$i]);
                }
    
            }
        }
    
        $imageCount = count($imgs);
    
        if ($imageCount == 0) {
           echo 'No files uploaded!!  <p><a href="/">Try again</a>';
           return;
        }
    
        $plural = ($imageCount == 1) ? '' : 's';
    
        foreach($imgs as $img) {
            printf('%s <img src="%s" width="50" height="50" /><br/>', $img['name'], $img['url']);
        }
    }
    

    If anyone have better answer, please be welcome to alter mine.

    0 讨论(0)
  • 2021-01-31 23:51

    The creator of Slim has made a library to handle file uploading through Slim: https://github.com/brandonsavage/Upload

    0 讨论(0)
提交回复
热议问题