Error while UPDATING Image URL in Database

Asked

Viewed 57 times

0

When running the PHP code I get the following error:

Parse error: syntax error, Unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or Identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in D: xampp htdocs Quae_dashboard_2020 processa_upload.php on line 70

<!DOCTYPE html>
<html lang="pt-br">
    <head>
        <meta charset="utf-8">
    </head>
    </body>
        <?php
            include_once("conexao.php");
            $arquivo    = $_FILES['arquivo']['name'];

            //Pasta onde o arquivo vai ser salvo
            $_UP['pasta'] = 'images/images_perfil/';

            //Tamanho máximo do arquivo em Bytes
            $_UP['tamanho'] = 2024*1024*100; //5mb

            //Array com a extensões permitidas
            $_UP['extensoes'] = array('png', 'jpg', 'jpeg', 'gif');

            //Renomeiar
            $_UP['renomeia'] = false;

            //Array com os tipos de erros de upload do PHP
            $_UP['erros'][0] = 'Não houve erro';
            $_UP['erros'][1] = 'O arquivo no upload é maior que o limite do PHP';
            $_UP['erros'][2] = 'O arquivo ultrapassa o limite de tamanho especificado no HTML';
            $_UP['erros'][3] = 'O upload do arquivo foi feito parcialmente';
            $_UP['erros'][4] = 'Não foi feito o upload do arquivo';

            //Verifica se houve algum erro com o upload. Se sim, exibe a mensagem do erro
            if($_FILES['arquivo']['error'] != 0){
                die("Não foi possivel fazer o upload, erro: <br />". $_UP['erros'][$_FILES['arquivo']['error']]);
                exit; //Para a execução do script
            }

            //Faz a verificação da extensao do arquivo
            $extensao = strtolower(end(explode('.', $_FILES['arquivo']['name'])));
            if(array_search($extensao, $_UP['extensoes'])=== false){        
                echo "
                    <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=https://quae.com.br/upload_imagem.php'>
                    <script type=\"text/javascript\">
                        alert(\"A imagem não foi salva - tipo de arquivo inválido.\");
                    </script>
                ";
            }

            //Faz a verificação do tamanho do arquivo
            else if ($_UP['tamanho'] < $_FILES['arquivo']['size']){
                echo "
                    <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=https://quae.com.br/upload_imagem.php'>
                    <script type=\"text/javascript\">
                        alert(\"Arquivo muito grande.\");
                    </script>
                ";
            }

            //O arquivo passou em todas as verificações, hora de tentar move-lo para a pasta foto
            else{
                //Primeiro verifica se deve trocar o nome do arquivo
                if($UP['renomeia'] == true){
                    //Cria um nome baseado no UNIX TIMESTAMP atual e com extensão .jpg
                    $nome_final = time().'.jpg';
                }else{
                    //mantem o nome original do arquivo
                    $nome_final = $_FILES['arquivo']['name'];
                }
                //Verificar se é possivel mover o arquivo para a pasta escolhida
                if(move_uploaded_file($_FILES['arquivo']['tmp_name'], $_UP['pasta']. $nome_final)){
                    //Upload efetuado com sucesso, exibe a mensagem
                    $query = mysqli_query($conn, "UPDATE artista SET url_imagem = $_UP['pasta']. $nome_final WHERE `id_autor`=1;"); 
                    echo "
                        <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=https://quae.com.br/upload_imagem.php'>
                        <script type=\"text/javascript\">
                            alert(\"Imagem cadastrada com Sucesso.\");
                        </script>
                    ";  
                }else{
                    //Upload não efetuado com sucesso, exibe a mensagem
                    echo "
                        <META HTTP-EQUIV=REFRESH CONTENT = '0;URL=https://quae.com.br/upload_imagem.php'>
                        <script type=\"text/javascript\">
                            alert(\"Imagem não foi cadastrada com Sucesso.\");
                        </script>
                    ";
                }
            }


        ?>

    </body>
</html>

1 answer

0


The line 70 of your code is where the update is, the problem is that the url_image field is a string and you want to inform a content without quotation marks. Make the following change

$query = mysqli_query($conn, "UPDATE artista SET url_imagem = '" . $_UP['pasta'] . $nome_final . "' WHERE  id_autor=1"); 
  • Thanks a lot! That’s exactly what it was! I always confuse this question of double quotes and simple when I try to use variables! It worked!

Browser other questions tagged

You are not signed in. Login or sign up in order to post.