0

私は2つのphpページをデザインしようとしています.1つはユーザーが記入しなければならない個人情報フォームで、もう1つは送信後に個人情報フォームで行われたすべての個人情報を表示するものです.私の問題は、送信した画像が表示されなかったことです. 2ページ目に表示されます。コードの何が問題になっていますか?私のコードは以下のように表示されます:

<!DOCTYPE html>
<head>
<title></title>
//for preview a image 
   <script type="text/javascript">
 function readURL(input) {
        if (input.files && input.files[0]) {
            var reader = new FileReader();

            reader.onload = function (e) {
                $('#blah').attr('src', e.target.result);
            }

            reader.readAsDataURL(input.files[0]);
        }
    }
     </script>
    </head>
    <body>
         <form name="rform" method="get" action="researchers.php">  
        <h4>Researchers Profile</h4> 

         <fieldset>
    <legend>Personal Details</legend>
        <form id="form1" method="get" action="researchers.php" enctype="multipart/form-data" id="pro_image">
       <input type='file' onchange="readURL(this);" name="image" id="image"/>
        <br><img id="blah" src="profile pic.jpg" alt="your image" width="160px" height="120px"/><br/>
        </form>

     <input type="submit" name="savebtn" value="Save"/>
     </form>                

research.php ページ

<?php

 $name=$_FILES['image']['name']; 
 $tmp=$_FILES['image']['tmp_name'];
 $new=time().$name;
 $new="upload/".$new;
 move_uploaded_file($tmp,$new);
 if($_FILES['image']['error']==0)
  {

 ?>
 <br /><img src="<?php echo $new;?>" width="100" height="100"/>
 <?php
 }
 ?>    
4

1 に答える 1

1

<form>メソッドをpostphpマニュアルのように変更してみてください$_FILES- http://www.php.net/manual/en/reserved.variables.files.php

説明

HTTP POST メソッドを介して現在のスクリプトにアップロードされた項目の連想配列。

また追加する必要がありますenctype="multipart/form-data"- http://www.w3.org/TR/html401/interact/forms.html#adef-enctype

<form name="rform" method="post" action="researchers.php" enctype="multipart/form-data">

http://www.php.net/manual/en/features.file-upload.post-method.phpも参照してください。

于 2013-05-02T04:42:24.137 に答える