dream3323 2016-09-15 17:04
浏览 100
已采纳

上传图像文件时php中的未定义索引

<?php
ob_start();
$mysql_host = "localhost";
$mysql_user = "root";
$mysql_pass = "";
$mysl_database = "login";

$conn = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
$db_select=mysql_select_db($mysl_database, $conn);
if($conn==false ||$db_select==false)
{
    die("connection error");
}

    if(!isset($_SESSION["email"]))
{
    session_start();
}

$location="profilepics/";
$name=$_FILES['myimage']['name'];
$temp_name=$_FILES['myimage']['tmp_name'];
if((isset($name)))
{
        move_uploaded_file($temp_name,$location.$name);
    }
?>

I am getting this error while the page gets reload or directed towards it

Notice: Undefined index: myimage in C:\xampp\htdocs\profilepic.php on line 21

Notice: Undefined index: myimage in C:\xampp\htdocs\profilepic.php on line 22

but as soon as file is uploaded errors disappear please help.below is my html code

<form method="post" enctype="multipart/form-data" action="profilepic.php">
  <div id="box_title"><span class="glyphicon glyphicon-user"></span> <strong>I look like this: </strong></div>
  <div class="pull-right"><img src="<?php $target_file ?>" height="150px" width="200px"/></div><br />
  <div class="form-group">
    <label for="exampleInputFile">select a picture</label>
    <input type="file" id="exampleInputFile" name="myimage" />
    <p class="help-block">upload your photo</p>
  </div>
  <button type="submit" class="btn btn-info">upload</button>
  <br />
  </form>
  • 写回答

2条回答 默认 最新

  • doucao1066 2016-09-15 17:15
    关注

    When you first load the page, $_FILES['myimage']['name'] and $_FILES['myimage']['tmp_name']; will be undefined because you haven't uploaded anything yet.

    The solution is:

    • First add a name attribute your submit button, like this:

      <button type="submit" name="submit" class="btn btn-info">upload</button>
      
    • And wrap your form processing code inside an if block, like this:

      // your code
      
      if(isset($_POST['submit'])){
          $location="profilepics/";
          $name=$_FILES['myimage']['name'];
          $temp_name=$_FILES['myimage']['tmp_name'];
          if(isset($name)){
              move_uploaded_file($temp_name,$location.$name);
          }
      }
      
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题