【问题标题】:slim php framework image upload put databaseslim php framework 图片上传 put 数据库
【发布时间】:2014-09-20 21:12:54
【问题描述】:

我是slim php框架的新手,我想通过POST上传一张图片并将文件名放入数据库中,有人可以给我一些示例代码。

【问题讨论】:

  • 也许这有帮助:help.slimframework.com/discussions/questions/… 这是一个上传文件的代码示例。您可以自己添加将名称存储到数据库中吗?
  • 不是我的头脑还不够苗条,你能举个例子吗
  • Slim 框架默认没有数据库功能,所以你可以只使用裸 PHP。如果你不知道它是如何工作的,我建议你遵循一些 PHP 和 MySQL 的介绍教程。有成千上万个(如果不是更多的话)。

标签: php file-upload slim


【解决方案1】:

这是路由器:

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

this 将指向下面的函数:

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']);
    }
}

如果有人有更好的答案,欢迎修改我的。

【讨论】:

  • 感谢您的回答!为了其他人的利益,应该指出,这种方法唯一特定于 Slim 的就是所有代码都放在路由器中。除此之外,这是一个通用的 PHP 解决方案。因此,如果它不是您要查找的内容,请考虑搜索 PHP file upload 并将该代码简单地放置在路由器中。
  • 我可以通过$app-&gt;post('/', 'uploadFile');路由上传图片吗??
  • 不错的朋友。我就是这么想的
  • 嗨,你能给我举个例子,比如...用户名、密码、用户图像我想传递的三个值。我将图像存储在单独的文件夹中,我需要更新数据库列图像名称..我知道它可能你能给我举个例子..我过去两周一直在挣扎
【解决方案2】:

Slim 的创建者制作了一个库来处理通过 Slim 上传文件:https://github.com/brandonsavage/Upload

【讨论】:

  • 正是我要找的 ^^。谢谢先生!
猜你喜欢
  • 1970-01-01
  • 2013-03-02
  • 2012-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-27
  • 1970-01-01
相关资源
最近更新 更多