In that upload code. The class uploads an audio. Everything works fine, but, I do not know how to do that "identifies" and "id_user" can manage the upload and restrict to only when those two are different or is "empty", the upload is done. There is the Upload class and the command before upload. Here are the codes below.
(01) This code is on the form page
<br><br>
<?php
require_once 'classes/Upload.class-pdo2.php';
require_once 'classes/Funcoes.class.php';
$objUp = new Upload();
$objFc = new Funcoes();
if(isset($_POST['btEnviar'])){
$objUp->queryInsert();
}
if(isset($_POST['btAlterar'])){
$objUp->queryUpdate();
}
if(!empty($_GET['acao'])){
switch($_GET['acao']){
case 'edit': $slt = $objUp->querySelecionar($_GET['id']); break;
case 'delet': $objUp->queryDelete($_GET['id']); break;
}
}
?>
//<br><br>
<?php<br>
require_once "Conexao.class-pdo.php";<br>
require_once "Funcoes.class.php";<br><br>
class Upload{<br><br>
//ATRIBUTOS PRIVADOS<br><br>
private $con;<br>
private $objfc;<br>
private $idUploadArquivo;<br>
private $tipo;<br>
private $id_user;<br>
private $legenda;<br>
private $identifica;<br>
private $arquivo;
<br><br><br>
//CONSTRUTOR<br>
public function __construct(){<br>
$this->con = new Conexao();<br>
$this->objfc = new Funcoes();<br>
}<br><br>
//METODOS MÁGICOS<br><br>
public function __set($atributo, $valor){<br>
$this->$atributo = $valor;<br>
}<br>
public function __get($atributo){<br>
return $this->$atributo;<br>
}<br>
<br><br>
/**<br>
1º PARTE (VARIAVEIS E TRY-CATCH) - <br>
O ESSA PARTE SEM FAZER O CADASTRO DAS INFORMACOES DO UPLOAD<br>
**/<br>
public function queryInsert(){<br>
try{<br>
$this->aula = $_POST['aula'];<br>
$this->identifica = $_POST['identifica'];<br>
$this->id_user = $_POST['id_user'];<br>
$this->legenda =date("HisdmY");<br>
$arquivo = $_FILES['arquivo'];<br>
$tamanho = 5000000; //5MB<br><br>
//2º PARTE (VERIFICANDO A EXISTENCIA DO ARQUIVO E FAZENDO A VALIDACAO DO MESMO COM TRÊS CONDIÇÕES)<br><br>
if(!empty($arquivo['name'])){<br>
//VALIDANDO O TIPO DE IMAGEM<br>
//echo $arquivo['type'];<br>
if(!preg_match('/^(audio)\/(mpeg|mp3)$/', $arquivo['type'])){<br>
$error = '<script type="text/javascript">alert("INSERT - Somente podem ser enviados arquivos (MP3)");</script>';<br>
}<br>
<br><br>
//VALIDANDO O TAMANHO DO ARQUIVO<br><br>
if($arquivo['size'] > $tamanho){<br>
$error = '<script type="text/javascript">alert("INSERT - O áudio enviado extrapola o tamanho permitido");</script>';<br>
}<br><br>
//3º PARTE (ALTERANDO O NOME DO ARQUIVO E ENVIANDO PARA PASTA QUE LHE FOI DESTINADA)<br><br>
if(count($error) == 0){<br>
$ext = pathinfo($arquivo['name']);<br>
$nome_imagem = $this->objfc->normalizaString($this->legenda).'.'.$ext['extension'];/**/<br>
$legenda = 'legenda';/**/<br>
<br><br>
$caminho_imagem = 'audios/'.$nome_imagem;<br>
$legenda = 'legenda';<br>
move_uploaded_file($arquivo['tmp_name'], $caminho_imagem);<br><br>
//CADASTRANDO AS INFORMAÇÕES
<br><br>
$cst = $this->con->conectar()->prepare("INSERT INTO 'aula_upload_arquivos' ('aula','identifica','id_user','legenda', 'arquivo') VALUES (:aula,:identifica,:id_user, :legenda, :arquivo) ;");<br>
$cst->bindParam(':aula', $this->objfc->tratarCaracter($this->aula, 1), PDO::PARAM_STR);<br>
$cst->bindParam(':identifica', $this->objfc->tratarCaracter($this->identifica, 1), PDO::PARAM_STR);<br>
$cst->bindParam(':id_user', $this->objfc->tratarCaracter($this->id_user, 1), PDO::PARAM_STR);<br>
$cst->bindParam(':legenda', $this->objfc->tratarCaracter($this->legenda, 1), PDO::PARAM_STR);<br>
$cst->bindParam(':arquivo', $nome_imagem, PDO::PARAM_STR);<br>
if($cst->execute()){<br>
header('Location:'.$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']);<br>
<br>
}else{<br>
//Erro de falha no programa//<br>
//header('location: http://localhost/definitivo/erro.php');<br>
echo '<script type="text/javascript">alert("Error: '.$ex->getMessage().'");</script>';<br>
}<br>
}else{<br>
echo $error;<br>
}<br>
}else{<br>
echo '<script type="text/javascript">alert("Escolha o arquivo para Upload");</script>';<br>
}<br>
}catch(PDOException $ex){<br>
echo '<script type="text/javascript">alert("Error: '.$ex->getMessage().'");</script>';<br>
}<br>
}<br>
}<br><br>
?><br>