Heim > Backend-Entwicklung > PHP-Tutorial > PHP页面用JS调取子窗口传值后,子窗口无法正常上传文件了

PHP页面用JS调取子窗口传值后,子窗口无法正常上传文件了

WBOY
Freigeben: 2016-06-23 14:13:51
Original
964 Leute haben es durchsucht

JavaScript PHP

主页面a.php,点击其中按钮后调取up.php页面,上传图片后自动关闭,并将路径信息返回给a.php上的输入框。单独调测up.php,能够上传文件并自动关闭。但是被a.php调取后,只能获取路径信息、自动关闭。但不能正确上传文件,请给与帮助,谢谢!
a.php代码如下:



<script> <br /> function gg(openwindow, aa, bb) { <br /> var str = window.showModalDialog('up.php', window, "dialogWidth=500px;dialogHeight=70px;center=yes;help=no;resizable=no;status=no"); <br /> if (!str) <br /> return; <br /> document.getElementById(aa).value = str[0]; <br /> document.getElementById(bb).value = str[1]; <br /> } <br /> </script>











     

    up.php代码如下:
    $uptypes=array(
        'image/jpg',
        'image/jpeg',
        'image/png',
        'image/pjpeg',
        'image/gif',
        'image/bmp',
        'image/x-png'
    );

    $max_file_size=2000000;     //上传文件大小限制, 单位BYTE
    $destination_folder="uploadimg/"; //上传文件路径
    ?>


    图片上传




    <script> <br /> function dd(strid, strvalue) { <br /> var str = new Array(strid, strvalue); <br /> window.returnValue = str; <br /> window.close(); <br /> } <br /> </script>

      
      
      
      

      允许上传图片类型*.jpg *.jpeg *.gif *.png


    if ($_SERVER['REQUEST_METHOD'] == 'POST')
    {
        if (!is_uploaded_file($_FILES["upfile"]['tmp_name']))
        //是否存在文件
        {
             echo "图片不存在!";
             exit;
        }

        $file = $_FILES["upfile"];
        if($max_file_size      //检查文件大小
        {
            echo "文件太大!";
            exit;
        }

        if(!in_array($file["type"], $uptypes))
        //检查文件类型
        {
            echo "文件类型不符!".$file["type"];
            exit;
        }

        if(!file_exists($destination_folder))
        {
            mkdir($destination_folder);
        }

        $filename=$file["tmp_name"];
        $image_size = getimagesize($filename);
        $pinfo=pathinfo($file["name"]);
        $ftype=$pinfo['extension'];
        $destination = $destination_folder.time().".".$ftype;
        if (file_exists($destination) && $overwrite != true)
        {
            echo "同名文件已经存在了";
            exit;
        }

        if(!move_uploaded_file ($filename, $destination))
        {
            echo "移动文件出错";
            exit;
        }
    }
    ?>


    回复讨论(解决方案)

    问题有俩,一个是调用子页面传值后还自动弹出一个IE窗口,这个窗口是up.php页面,我不想让他弹出,于是在up.php head标签内加上了 代码,可一添上去,就不能上传了。。于是我在a.php中加了个框架,想让这个自动弹出的页面在这个指定框架中弹出,可不熟悉怎样制定。。拜托版主给帮帮忙,,提了几个问题没注意没积分了。。。

    Quelle:php.cn
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage