Jump to content
Artur Mendonça

Erro ao fazer upload de vídeo

Recommended Posts

Olá amigos.
Estou a tentar fazer um sistema para upload de vídeos para criar uma base de dados.
Já fiz um sistema para imagens e funciona na perfeição. Adaptei este código para upload de vídeo e recebo as mensagens de erro:

Citar

Notice: Undefined index: arquivo in (...)\proc_cad_albumvideo2.php on line 14
Notice: Undefined index: arquivo in (...)\proc_cad_albumvideo2.php on line 21
Notice: Undefined index: arquivo in (...)\proc_cad_albumvideo2.php on line 27

Os (...) foi que coloquei para encurtar o caminho.

 

Código da página para seleção e upload do vídeo:

<?php
session_start();
include_once "../conexao.php";
$agid = $_REQUEST['id'];
$sql = "select * from tbl_album where albumid='$agid'";
$rs_result = mysqli_query($conectar, $sql);
?>


<!DOCTYPE html>
<html lang="pt-br">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="Página Administrativa">
    <meta name="author" content="">
    <link rel="icon" href="imagens/imgadmin.ico">

    <title>Administrativo</title>
    <link rel="stylesheet" href="../css/bootstrap.min.css">
  <link rel="stylesheet" href="../css/style.css">

  </head>

<?php $agid = $_REQUEST['id'];

$sql = "SELECT * FROM tbl_albumvideo WHERE albumid='$agid'";
$rs_result = mysqli_query($conectar, $sql);

while ($row = mysqli_fetch_assoc($rs_result)) {
    $aname = $row["name"];
}
;?>


<body>
<?php
include_once "admmenu.php";
?>

<div class="container theme-showcase" role="main" Style='margin-top: 100px'>
   <h1 class="page-header"><br />Adicionar vídeo</h1>



            <div class="row">
                <div class="col-md-12">
                    <div class="panel panel-default">
                        <div class="panel-heading">
                            Por favor selecione o vídeo

                        </div>
                        <div class="panel-body">
                            <div class="row">
                                <div class="col-lg-6">
 <form action="processa/proc_cad_albumvideo2.php?id=<?php echo $agid ?>" method="POST" enctype="multipart/form-data" name="upload">


<div class="form-group">
<input type="file" name="arquivo" id="arquivo" value="arquivo"/>
</div>

<div class="form-group">
<input name="enviar" class="btn btn-primary" type="submit" id="enviar" value="Enviar">
</div>
<div class="alert alert-danger" role="alert" style='margin-top:20px'>
  Esta operação poderá ser demorada, dependendo do tamanho do ficheiro a enviar e das suas condições de ligação à rede.
  <br/>
  <br/>
  Por favor seja paciente e não reinicie a página!
</div>




</form>
</div>
    </div>
    </div>
                  </div>
              </div>
  </div>
  </div>

      <script src="../js/jquery-3.2.1.slim.min.js"></script>
      <script src="../js/popper.min.js"></script>
      <script src="../js/bootstrap.min.js"></script>


</body>

</html>

E este é o código para efetuar o upload e gravação na BD

<?php

ini_set('display_errors', 1);
ini_set('display_startup_erros', 1);
error_reporting(E_ALL);
session_start();
include_once "../../conexao.php";


$adate = date('Y-m-d H:i:s');
$status = 'process';
$arquivo = $_FILES['arquivo'];
$albumid = $_REQUEST['id'];
$pasta = '../../videos/';
$resulta = mysqli_query($conectar, "SELECT * FROM tbl_albumvideo WHERE albumid='$albumid'");
$linhas = mysqli_fetch_assoc($resulta);

$local = $linhas["local"];
$arqnome = $_FILES['arquivo']['name'];
$ano = $linhas['ano'];

$extensao = @end(explode('.', $arqnome));
$novonome = time() . "-" . rand() . "." . $extensao;

$tmp = $_FILES['arquivo']['tmp_name'];
$file = $pasta . $novonome;


if (move_uploaded_file($tmp, $file)) {
    $query = mysqli_query($conectar, "INSERT INTO videos
	(video_name, local, ano,aid)
	VALUES
	('$novonome','$local', '$ano', '$albumid')") or die(mysqli_error($conectar));

    if ($query) {
        echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://(...)/addgalleryvideo.php'>
	<script type=\"text/javascript\">
	   alert(\" O vídeo foi guardado com sucesso.\");
   </script>";} else {echo "
<META HTTP-EQUIV=REFRESH CONTENT = '0;URL=http://(...)/addgalleryvideo.php'>
					<script type=\"text/javascript\">
					   alert(\" O Vídeo não foi guardado.\");
				   </script>
";

    } 
}

Linha 14 : $arquivo = $_FILES['arquivo']; 

Linha 21: $arqnome = $_FILES['arquivo']['name'];

Linha 27: $tmp = $_FILES['arquivo']['tmp_name'];

 

Desde já muito obrigado.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Jack Oliveira
      Ola pessoal bom dia 
      Bom estou tentando fazer um formulario de cadastros
      com ajax
       
      mais sempre me retorna o erro uma msg que definir caso não esteja fazendo
      Houve um erro ao fazer o seu cadastro, tente novamente!
       
       
      Mais já olhei tudo que podia não há porque dar erro pois esta sendo colocando os campos certos para cadastrar
       
      No Ajax esta da seguinte forma
      <script> $(function(){ $('.form').submit(function(){ $('.loading').html("<img src='loading.gif' width='45'>"); $.ajax({ url: '<?= ConfigPainel('site_url');?>controlers/cadastro_empresa_users.php', type: 'POST', data: $('.form').serialize(), success: function(data){ $('.mostrar').html(data); $('.loading').hide(); $('.form')[0].reset(); } }); return false; }); }); </script> no html no form fiz assim pegando a class form do ajax creio que não há nada de errado aqui
      <form action="" method="post" enctype="multipart/form-data" class="form">
       
      no php esta assim
       
      <?php header('Access-Control-Allow-Origin: *'); require_once ('../admin/database/config.php'); require_once ('../admin/database/config.database..php'); require_once ('../admin/database/config.session.php'); require_once ('../admin/includes/funcoes.php'); if($_POST){ if(empty($_POST['user_name']) || empty($_POST['user_lastname']) || empty($_POST['user_email']) || empty($_POST['user_telefone']) || empty($_POST['user_password']) || empty($_POST['user_plano']) || empty($_POST['nome_empresa']) || empty($_POST['nome_empresa_link'])){ echo '<script> $(document).ready(function(){ swal("Ops...","Preencha todos os campos obrigatórios!","warning"); }); </script>'; }else{ // INICIO PASSANDO PARA ARRAY DO USUARIO. $user_name = post('user_name'); $user_lastname = post('user_lastname'); $user_email = post('user_email'); $user_telefone = post('user_telefone'); $user_password = md5(post('user_password')); $user_plano = post('user_plano'); $user_level = 3; $user_registration = date('Y-m-d H:i:s'); // FIM ARRAY DO USUARIO. $QueryC = DBRead('configuracoes_site','*'); if (is_array($QueryC)) { foreach ($QueryC as $CONF) { //Teste $DiasDeTeste = $CONF['dias_testes']; //Plano 1 $nome_plano_um = $CONF['nome_plano_um']; $v_plano_um = $CONF['v_plano_um']; $dias_plano_um = $CONF['dias_plano_um']; //Plano 2 $nome_plano_dois = $CONF['nome_plano_dois']; $v_plano_dois = $CONF['v_plano_dois']; $dias_plano_dois = $CONF['dias_plano_dois']; //Plano 3 $nome_plano_tres = $CONF['nome_plano_tres']; $v_plano_tres = $CONF['v_plano_tres']; $dias_plano_tres = $CONF['dias_plano_tres']; }} //INICIO PASSANDO PARA ARRAY DA EMPRESA $nome_empresa = post('nome_empresa'); $nome_empresa_link = post('nome_empresa_link'); $end_uf_empresa = post('end_uf_empresa'); $cidade_empresa = post('cidade_empresa'); $end_bairro_empresa = post('end_bairro_empresa'); $end_rua_n_empresa = post('end_rua_n_empresa'); $email_empresa = post('user_email'); $telefone_empresa = preg_replace("/[^0-9]/", "", post('user_telefone')); $empresa_data_renovacao = date("Y-m-d", strtotime("+{$DiasDeTeste} days")); $QueryE = DBRead('estados','*',"WHERE id='{$end_uf_empresa}'"); if (is_array($QueryE)) { foreach ($QueryE as $ES) { $uf_empresa = $ES['sigla']; }} $QueryU = DBRead('ws_users','*',"WHERE user_plano='{$user_plano}'"); if (is_array($QueryU)) { foreach ($QueryU as $USER) { $UserPlano = $USER['user_plano']; }} switch ($UserPlano) { case '1': $Planos = $nome_plano_um; $Valor = 'R$:'.$v_plano_um.''; $Dias = 'Assinatura de '.$dias_plano_um.' dias'; break; case '2': $Planos = $nome_plano_dois; $Valor = 'R$:'.$v_plano_dois.''; $Dias = 'Assinatura de '.$dias_plano_dois.' dias'; break; case '3': $Planos = $nome_plano_tres; $Valor = 'R$:'.$v_plano_tres.''; $Dias = 'Assinatura de '.$dias_plano_tres.' dias'; break; default: $Planos = 'Plano Teste'; $Valor = 'Bônus R$: 21,00'; $Dias = 'Assinatura de '.$empresa_data_renovacao.' dias grátis'; break; } $Adicionar = array( 'user_name' => $user_name, 'user_lastname' => $user_lastname, 'user_email' => $user_email, 'user_telefone' => $user_telefone, 'user_password' => $user_password, 'user_plano' => $user_plano, 'user_level' => 3, 'user_registration' => $user_registration ); $Query = DBCreate('ws_users', $Adicionar); $Adicionar = array( 'nome_empresa' => $nome_empresa, 'nome_empresa_link' => $nome_empresa_link, 'end_uf_empresa' => $uf_empresa, 'cidade_empresa' => $cidade_empresa, 'end_bairro_empresa' => $end_bairro_empresa, 'end_rua_n_empresa' => $end_rua_n_empresa, 'email_empresa' => $email_empresa, 'telefone_empresa' => $telefone_empresa, 'empresa_data_renovacao' => $empresa_data_renovacao ); $Query = DBCreate('ws_empresa', $Adicionar); if ($Query != 0) { echo' <script> $(document).ready(function(){ swal("Ops '.utf8_encode($user_name).'...","Houve um erro ao fazer o seu cadastro, tente novamente!", "error"); }); </script>'; }else{ echo' <script> $(document).ready(function(){ swal("Sucesso '.utf8_encode($user_name).'...", "Seu cadastro foi realizado com sucesso.<br><a href="./login/Acessar"><button class="btn btn-default btn-sm"></button>Fazer Login...</a>", "success") }); </script>'; } } } Posso esta deixando passar algo no php que não estou vendo o problema....
    • By MarcioVmRJ
      Olá.
      Gostaria de saber como fazer um upload utilizando autenticação no ftp com o Dundas.
      Alguém sabe se é possível?
      Já tentei várias formas para autenticar no ftp e não está funcionando.
      Tentei esse aqui também, que não utiliza o dundas: https://benmeg.com/code/asp/ftp.asp.html mas não funcionou.
       
      Meu código está assim:
      Set DundasUpload = server.CreateObject("Dundas.Upload.2")
      DundasUpload.ImpersonateUser "login", "senha", "dominio", 3
      DundasUpload.UseUniqueNames = false
       
      DundasUpload.Save caminhoteste
      DundasUpload.ImpersonationTerminate()
      Set DundasUpload = Nothing
       
      tentei assim também: DundasUpload.ImpersonateUser "login", "senha", "ftp://dominio.com.br/fotos", 3
      mas retorna "Can't open file for writing. -2147467259"
      Mas o diretório está com permissão de escrita.
       
      Obrigado.
    • By Juan Carlos PT
      Olá, eu quero poder pegar um vídeo do meu canal na Nimo TV e deixar ele em sites parceiros para fortalecer a minha divulgação. Só que não consigo capturar o código <video></video> do html5 do site na Nimo TV. Eles não mostram o formato do vídeo:
       

      Se alguém souber me ajudar, terei enorme gratidão!
       
      OBS: Perdão se alguém postou algo parecido aqui no site, não vi!

    • By AlexandrePrezzi
      Estou fazendo um formulário onde tenho que enviar um upload de videos .... fiz o mesmo procedimento para imagens e funciona perfeitamente... porem para vídeo nao...
       
      Código do  Formulário
       
      <form id="Form_AddVideos" class="form-group" method="POST" action="javascript:func()" enctype="multipart/form-data"> <input type="hidden" id="ACAO_VIDEO" name="ACAO_VIDEO" value="INSERT_NEW_VIDEOS" /> <input type="hidden" id="ipv100_video" name="ipv100_video" value="<?php echo $_GET['id_pv100']; ?>" /> <input type="hidden" id="tipo_video" name="tipo_video" value="V" /> <div class="container"> <div class="row"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12"> <div class="form-group"> <label for="add_videos">Adicionar Fotos</label><br /> <input class="form-control form-control-sm" type="file" name="video[]" multiple="multiple" id="video" accept="video/*" /> </div> </div> </div> <button type="submit" id="btn_Gravar_video" title="Gravar" name="wGravar_video" class="btn btn-primary tp" value="TELA"> <i class="fa fa-save"></i> Gravar </button> <button type="button" class="btn btn-danger tp btn_fechar_modal_cliente" title="Cancelar" data-dismiss="modal" style="margin-left: 5px;"> <i class="fa fa-times"></i> Cancelar </button> </div> </form>  
      Script Ajax para enviar os dados
       
      <script type="text/javascript"> $(document).ready(function (e) { $("#Form_AddVideos").on('submit',(function(e) { e.preventDefault(); $.ajax({ enctype: 'multipart/form-data', url: "src/controller/request_videos.php", type: "POST", data: new FormData(this), contentType: false, cache: false, processData:false, beforeSend : function() { //$("#preview").fadeOut(); $('#resultErroVid').html("<img src='img/aguarde.gif' />"); }, success: function(g) { var objVid = JSON.parse(g); if (objVid.rst){ if ($('#ACAO_VIDEO').val() === 'INSERT_NEW_VIDEOS'){ document.getElementById('wOKDivVid').style.visibility = "visible"; document.getElementById('wOKDivVid').style.display = "block"; $('#resultOKVid').html(objVid.msg); setTimeout(function(){ document.getElementById('wOKDivVid').style.visibility = "hidden"; document.getElementById('wOKDivVid').style.display = "none"; $(".modal_proprio_videos").hide(); document.location.reload(true); }, 1200); } else { document.getElementById('wErrorDivVid').style.visibility = "visible"; document.getElementById('wErrorDivVid').style.display = "block"; $('#resultErroCli').html(objVid.msg); setTimeout(function(){ document.getElementById('wErrorDivCli').style.visibility = "hidden"; document.getElementById('wErrorDivCli').style.display = "none"; $(".modal_proprio_imagens").hide(); document.location.reload(true); }, 1200); } } else { //fEnableBtn(Form_Cli_GQPS); document.getElementById('wErrorDivVid').style.visibility = "visible"; document.getElementById('wErrorDivVid').style.display = "block"; $('#resultErroVid').html(objVid.msg); setTimeout(function(){ document.getElementById('wErrorDivVid').style.visibility = "hidden"; document.getElementById('wErrorDivVid').style.display = "none"; $(".modal_proprio_imagens").hide(); document.location.reload(true); }, 2000); }//fim do if/else objCli } }); })); }); </script> Arquivo php request .....(pedaço)
       
      if (@$_POST['ACAO_VIDEO'] == 'INSERT_NEW_VIDEOS'){ require_once '../model/setaqueryGQPS.php'; require_once '../model/conecta.php'; //require_once '../model/zConst_GQPS.php'; //require_once '../../../zLib.php'; $wEMP = '001'; $wPV100 = $_POST['ipv100_video']; $video = $_FILES['video']; if ($_POST['ACAO_VIDEO'] == 'INSERT_NEW_VIDEOS'){ //require_once '../model/zConst_GQPS.php'; if($video != ''){ O que acontece que no $_FILES,  o arquivo não esta sendo salvo na pasta  temporaria..... está vindo vazia essa informação, conforme mostro na imagem ....
       
      Alguem sabe me dizer onde ta o problema ? 
       
      Tenho um procedimento bem semelhante para imagens e funciona perfeitamente.
       
       
       

    • By fideles
      Fala pessoal, tudo tranquilo?
       
      Tem uma dúvida e gostaria de uma sugestão.
      Tenho um codigo que faz um upload de um arquivo CSV, gostaria que ao importar ele puxe os dados da descrição em outro banco de dados, seria possivel ?
       
      O codigo abaixo seria, o usuario monta a planilha e coloca somente o codigo do item e a quantidada e faz o upload, mais dessa forma o codigo grava no banco somente o que tem na planilha.
       
      O que precisaria seria,  o usuario monta a planilha e coloca somente o codigo do item e a quantidada e faz o upload e nesse momento do upload, ele puxe a descrição e unidade do item cadastro em outra tabela antes de gravar o processo abaixo. 
       
      <?php //Aciona o codigo somente se clicar no botão enviar if($_POST){ //esconde os erros do navegador error_reporting(E_ALL ^ E_NOTICE); // inclui a conexão include_once('../configuracoes/conexao/config_4.php'); //cria as varias para pegar o arquivo e o nome do arquivo $arquivo = $_FILES["file"]["tmp_name"]; $nome = $_FILES["file"]["name"]; $ext = explode(".", $nome); $extencao = end($ext); //cria uma condição para validar a extenção do arquivo. if($extencao != "csv"){ echo "<script>alert('Extens\u00e3o inv\u00e1lida, verifique o arquivo.');</script>"; } else{ //se a estensao for valida, executa a função abaixo $objeto = fopen($arquivo, 'r'); //abre o arquivo e le os dados while(($dados = fgetcsv($objeto, 1000, ",")) !== FALSE )//faz um loop em todo arquivo. { $item = $dados[0]; $quantidade = $dados[1]; //exibe os dados na tela do usuario echo "<table border='1'>"; echo "<tr>"; echo "<td width='250px'>$nome</td>"; echo "<td width='500px'>$email</td>"; echo "</tr></table>"; $result = mysql_query("INSERT INTO emails (item, quantidade) VALUES('$nome','$email')"); } if($result){ echo "Dados inseridos com sucesso"; } else{ echo mysql_error();//"Erro ao inserir os dados"; } } } ?>  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.