>  기사  >  백엔드 개발  >  PHP는 iframe을 사용하여 이미지를 업로드하고 표시합니다.

PHP는 iframe을 사용하여 이미지를 업로드하고 표시합니다.

*文
*文원래의
2018-01-02 15:21:542133검색

요즘 이미지 업로드 기능을 작업하고 있습니다. 원래는 ajax를 사용하여 이미지를 업로드하여 즉시 새로 고침을 수행하려고 했지만 나중에 iframe 프레임워크를 사용하여 이를 달성했습니다. 이제 그것을 여러분과 공유하고 모든 사람에게 참고 자료로 제공하겠습니다. 그것이 모두에게 도움이 되기를 바랍니다.

그런데 이 프레임워크를 사용하면 문제가 발생합니다. 이미지를 업로드한 후 업로드된 경로를 이 프레임으로 반환해야 하는데 어떻게 꺼내야 할까요? 처음에는 iframe에 직접 값을 출력하는데, 그런 다음 경로를 꺼냅니다. 응답이 없으며 온라인으로 정보를 확인했지만 다양한 버전에는 iframe을 사용하여 이미지를 업로드하고 실시간 새로 고침 기능을 구현하는 방법에 대한 포괄적인 설명이 없습니다. 나 혼자만 공부할 수 있어요. 대부분은 업로드하는 방법이면 충분하다고 합니다. 여기서 멈추는 것은 정말 불편합니다. 혼자서만 공부할 수 있습니다

iframe에 업로드가 성공한 후에는 값이 페이지에 출력되기 때문입니다. 꺼내서 시도해 보세요. N가지 방법을 시도하고 N가지 정보를 확인하고 나면 정말 골치가 아프죠.

나중에 iframe에 src를 추가하고 출력값을 간단한 javascript문으로 작성해서 이미지 업로드 성공 후 출력해보겠습니다 ㅎㅎ. 요약하자면:

html 코드:

<iframe id="upload_target" name="upload_target" src="upload.php" style="width:0;heigth:0;overflow:hidden;border:0;position: absolute; left:-500px;"></iframe> //iframe设置成隐藏的,src链接的页面为图片上传的后台文件页面,不过加不加影响都不大,只不过为了更精确而已
<img id="tag_img" src="" />
<form enctype="multipart/form-data" action="upload.php" method="post" target="upload_target">
   <input type="file" name="userfile" class="file" value="" />
   <input type="submit" name="uploadimg" value="上传" />
</form> //表单的那么值对应着空框架的那么值,提交后跳转到空框架中,这样就不对父窗口页面进行刷新了

는 확인을 위해 백그라운드 upload.php 페이지에 제출됩니다. 스스로 생성한 경로가 있을 것입니다

그런 다음 이미지를 성공적으로 업데이트한 후 이 경로를 제거하고 JS를 통해 상위 창의 그림 상자에서 이미지 경로를 변경한 다음 다시 할당할 수 있습니다. 저장된 경로 주소를 검색하고 업데이트가 성공할 때마다 업데이트하기 위해 데이터베이스로 이동할 필요가 없습니다.

여기서 반환할 js 코드만 작성합니다

echo "<script type=&#39;text/javascript&#39;>window.parent.document.getElementByIdx_x(&#39;tag_img&#39;).setAttribute(&#39;src&#39;,&#39;$updurl&#39;);</script>";
    //这就是在框架中输出一段js代码,然后操作父框架中图片地址刷新成我上传的图片地址,$updurl为上传图片的地址

이렇게 하면 페이지를 새로 고치지 않고도 쉽게 이미지를 업로드할 수 있고 시간이 지나면 이미지가 새로 고쳐집니다.

관련 추천:

PHP 이미지 파일 업로드 구현 코드

php 이미지 썸네일 구현 방법

PHP 이미지 파일 업로드 원리 분석 및 코드

위 내용은 PHP는 iframe을 사용하여 이미지를 업로드하고 표시합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.