【问题标题】:File Upload Ajax PHP文件上传 Ajax PHP
【发布时间】:2012-06-05 01:27:22
【问题描述】:

我有一段使用 Ajax 和 PHP 上传图像的 javascript。

我在几个 html 页面的 head 部分使用 javascript,想知道是否有办法将这些页面中的值传递给 Upload.php 文件,而无需为每个页面创建单独的 Upload.php 文件网页。

javascript部分:

<script type="text/javascript" >
        $(function(){
            var btnUpload=$('#me');
            var mestatus=$('#mestatus');
            var files=$('#files');
            new AjaxUpload(btnUpload, {
                action: '../UploadDoc/Upload.php',
                name: 'uploadfile',

我想将值传递给的 Upload.php 文件部分:

<?php
/* Set the location to upload the file to */
$uploaddir = '../documents/userdocs/'; 

/* Set the name and file extension of the file being saved */
$file = $uploaddir ."HtmlPage1_".basename($_FILES['uploadfile']['name']); 
$file_name= "HtmlPage1_".$_FILES['uploadfile']['name']; 

'HtmlPage1_' 将是我需要传递的信息,因为它是唯一改变的部分。

非常感谢任何帮助。

非常感谢

【问题讨论】:

    标签: php javascript mysql html ajax


    【解决方案1】:

    在你的 Javascript 中做

    $(function(){
            var btnUpload=$('#me');
            var mestatus=$('#mestatus');
            var files=$('#files');
            new AjaxUpload(btnUpload, {
                action: '../UploadDoc/Upload.php',
                name: 'uploadfile',
                params: {
                      pageKey: 'HtmlPage1_'
                }
          ......ETC-CODE......................
    

    或者你的javascript代码做

    $(function(){
            var btnUpload=$('#me');
            var mestatus=$('#mestatus');
            var files=$('#files');
            new AjaxUpload(btnUpload, {
                action: '../UploadDoc/Upload.php?pageKey=HtmlPage1_',
                name: 'uploadfile',
          ......ETC-CODE......................
    

    然后在你的 PHP 中做:

    <?php
    /* Set the location to upload the file to */
    $uploaddir = '../documents/userdocs/'; 
    
    /* Set the name and file extension of the file being saved */
    $file = $uploaddir .$_REQUEST['pageKey'].basename($_FILES['uploadfile']['name']); 
    $file_name= $_REQUEST['pageKey'].$_FILES['uploadfile']['name']; 
    ......ETC-CODE......................
    

    然后您将每个页面中的javascript代码修改为“pageKey”参数。

    【讨论】:

    • 感谢您的回复。不幸的是,虽然文件仍在上传,但参数值似乎没有到达 PHP 文件。该文件以其正常名称保存,减去预期的“HtmlPage1_”前缀。知道为什么会这样吗?让我知道发布更多代码是否会有所帮助。
    • 另一种方法是执行
    猜你喜欢
    • 2012-04-22
    • 2014-03-22
    • 2017-08-25
    • 2010-10-24
    • 2014-05-07
    • 2012-05-04
    相关资源
    最近更新 更多