利用iframe+php实现图片的上传

1.在文件提交的页面html加上一个隐藏的框架iframe:

<iframe src=""  width="0" height="0" style="display:none;" name="tarframe"></iframe>
然后把表单提交到后台的php文件的运行框架设置在隐藏的框架中,实现无刷新页面的上传。

具体代码如下:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="js/jquery-2.2.1.min.js"></script>
    <script>
        $(function () {

            $("#upload_file").change(function(){
                $("#uploadFrom").submit();
            });

        })


        function stopSend(str){

            str="img/"+str;
            var im="<img src='"+str+"'>";
            console.log(im);
            $("#msg").empty().append(im);
        }

    </script>
</head>

<body>
    <div class="frm">
        <form name="uploadFrom" id="uploadFrom" action="test.php" method="post"  target="tarframe" enctype="multipart/form-data">
            <input type="file" id="upload_file" name="upfile">
        </form>
        <iframe src=""  width="0" height="0" style="display:none;" name="tarframe"></iframe>  //隐藏的框架
    </div>
    <div id="msg">
    </div>
</body>
</html>
2.php利用$_FILES['name']获取上传的文件,具体代码实现如下:

<?php

$file=$_FILES['upfile']; //获取上传文件对象
$name=$file['name'];
move_uploaded_file($file['tmp_name'],iconv("UTF-8", "gb2312", "img/".$file["name"]));  //保存文件到服务器固定位置,注意设置文件名编码


echo "<script>parent.stopSend('$name')</script>";
把文件保存在服务器对应工程的img文件下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在web应用中,单点登录(Single Sign-On,SSO)是指用户只需要一次登录,即可访问多个应用程序的系统,而不需要重复的输入用户名和密码。这种系统可以减少用户输入登录信息的次数,简化用户访问多个应用程序系统的流程,提高用户体验,也方便了用户管理。实现SSO需要在各个应用程序之间共享登录信息。在这个过程中,iframe和cookie结合使用是实现简单的单点登录的一种方式。 iframe是一种HTML框架,可以将一个HTML文档嵌入到另一个HTML文档中。利用iframe实现跨域单点登录,可以让用户在第一次登录后,其他应用程序可以共享已登录的cookie信息,从而实现单点登录的效果。具体步骤如下: 1、用户访问主程序,点击需要跳转到的应用程序链接。 2、主程序利用iframe打开应用程序页面。 3、应用程序检查cookie信息是否存在,如果不存在,则展示登录页面,让用户输入用户名和密码进行登录。 4、应用程序利用AJAX等技术将用户的用户名和密码提交到主程序,主程序进行验证,在验证成功后写入cookie信息。 5、主程序刷新页面后丢失cookie信息。这时,应用程序利用iframe中的cookie信息进行验证,实现单点登录。 需要注意的是,iframe与跨域问题有关,需要进行跨域访问设置。同时,cookie也需要设置域名和路径,让不同的应用程序共享cookie信息。如果多个应用程序之间共享同一个域名,则不需要设置跨域。 总的来说,iframe cookie是实现简单的单点登录的一种简单便捷的方式。它不需要复杂的技术操作,同时也提高了用户的访问效率和体验。当然,它只适用于相对简单的应用程序,对于更加复杂的应用程序,需要其他的技术手段来实现跨域单点登录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值