PHP文件上传接口(带参数)

简单讲解下PHP服务端接受客户端上传的文件
客户端上传文件到服务器,带参数,并且进行用户验证,方法很简单

直接贴代码

<?php

    //强制显示错误
    error_reporting(E_ALL);
    // error_reporting = E_ALL & ~E_NOTICE
    ini_set('display_errors', '1');

    $UserId = str_replace("'", "", $_REQUEST["UserId"]);//接收用户ID
    $Token = str_replace("'", "", $_REQUEST["Token"]);//接收Token
    $sql = "SELECT * FROM `im_user` WHERE `UserId` = '$UserId'";
    $request = mysql_fetch_assoc(mysql_query($sql));
    //进行验证,如果验证通过,处理接收文件
    if (md5($UserId.$request["UserToken"]."qwertyuiop") == $Token) 
    {    
        //判断是否有文件上传
        if (isset($_FILES['file'])) {
            //定义文件
            $name = time().rand(10000000,99999999);
            $target_path  = "./uploadfile/";//接收文件目录
            // echo $target_path.$name.$_FILES['file']['type']; 
            // $target_path = $target_path.basename($_FILES['file']['name']);
            $target_path = $target_path.basename($name.".FT");
            //将文件从临时目录拷贝到指定目录
            if(move_uploaded_file($_FILES['file']['tmp_name'], $target_path)) {    
            //上传成功,可进行进一步操作,将路径写入数据库等.
                echo "The file ".basename( $_FILES['file']['name']). " has been uploaded";
            }  else{    
                 echo "There was an error uploading the file, please try again!" . $_FILES['file']['error'];
            }
            exit;
        }else
        {
            echo "没有文件";
        }
    }else
    {
        echo "认证不通过!";
    }
?>
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 ExtJS 中通过按钮上传 `.xls` 文件并将文件路径传输到后端接口可以使用 `Ext.form.Panel` 和 `Ext.form.field.File` 组件来实现。以下是一个示例代码: ```javascript Ext.create('Ext.form.Panel', { title: '上传文件', width: 400, bodyPadding: 10, renderTo: Ext.getBody(), items: [{ xtype: 'filefield', name: 'file', fieldLabel: '选择文件', labelWidth: 100, buttonText: '浏览', listeners: { change: function(field, value) { var form = field.up('form').getForm(); form.submit({ url: 'upload.php', // 上传文件的后端接口 waitMsg: '正在上传文件...', success: function(form, action) { var response = action.result; Ext.Msg.alert('成功', '文件上传成功'); // 获取上传后的文件路径 var filePath = response.filePath; // 将文件路径传输到后端接口 Ext.Ajax.request({ url: 'process.php', // 处理文件路径的后端接口 method: 'POST', params: { filePath: filePath }, success: function(response) { var result = Ext.decode(response.responseText); // 处理后端接口返回的结果 }, failure: function(response) { Ext.Msg.alert('错误', '请求失败'); } }); }, failure: function(form, action) { Ext.Msg.alert('错误', action.result.msg); } }); } } }] }); ``` 在上述代码中,我们通过 `Ext.form.Panel` 创建一个表单面板,然后添加一个 `Ext.form.field.File` 组件作为上传按钮。当用户选择文件后,我们可以通过监听 `change` 事件来触发文件上传操作。在上传成功后,我们获取上传后的文件路径,并使用 `Ext.Ajax.request` 将文件路径传输到后端接口进行处理。 请注意,你需要根据实际情况调整接口的 URL 和参数以及处理返回结果的逻辑。同时,你也需要在后端实现对应的接口来处理文件上传和文件路径传输的逻辑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值