1

我有一个更新新闻的页面,但它不起作用。我有这段代码,但变量 $imagem 中有错误。

    <?php

 session_start();

 require_once '../config.php';

 $id_nt = $_GET["id_nt_up"];

 $titulo     = $_POST["noticia_titulo"];
 $conteudo   = $_POST["noticia_conteudo"];
 $descricao   = $_POST["noticia_descricao"];

  $autorPub   = $_SESSION["Usuario"];
  $autorSen   = $_SESSION["Senha"];  

  $SQL_AU = mysql_query("SELECT id, Nome FROM utilizadores WHERE Usuario='$autorPub' and    Senha='$autorSen' ");

  while($ath = mysql_fetch_assoc($SQL_AU)){
        $autorN = $ath["Nome"];
        $idAutor = $ath['id'];
  }

 // Configuração da Imagem
 $imagem  = $_FILES["imagem-noticia"];
 $destino = "../img/noticias/".$imagem['name'];

 if(isset($_POST["submit"])){

     mysql_query("UPDATE noticias SET Titulo='$titulo', Conteudo='$conteudo', Descricao='$descricao', Username=$autorN, Imagem='".$imagem['name']."' WHERE id_noticia=$id_nt");
     if($imagem['type'] == "image/jpeg"){

        if($imagem['type'] == "image/jpeg"){
        move_uploaded_file($imagem['tmp_name'] , $destino);
     }else if($imagem['type'] == "image/png"){
        move_uploaded_file($imagem['tmp_name'] , $destino);
     }else if($imagem['type'] == "image/gif"){
        move_uploaded_file($imagem['tmp_name'] , $destino); 
     }

     }
}
?>      

当我尝试更新新闻时,我收到此错误。

注意:未定义索引:第 35 行 C:\wamp\www\bootstrap-3.1.1-dist\admin\editar_noticia_sucess.php 中的 imagem-noticia

editar_noticia_sucess.php 就是上面的这个文件。

问候,路易斯坎迪亚斯

4

1 回答 1

0

您收到的通知不应阻止页面工作。这是因为您在没有上传文件的情况下尝试访问上传的文件(或不使用“imagem-noticia”输入)。这可以修复改变这个:

$imagem  = $_FILES["imagem-noticia"];
$destino = "../img/noticias/".$imagem['name'];

至:

if (isset($_FILES["imagem-noticia"])) {
    $imagem  = $_FILES["imagem-noticia"];
    $destino = "../img/noticias/".$imagem['name'];
}

新代码确保文件 ai 在尝试对其执行进一步操作之前已上传。

于 2014-04-15T12:37:18.737 回答