Tenho um projecto a andar, e está quase tudo pronto. No backoffice consigo inserir um sitio na db, e ao inserir o sitio tenho a hipotese de inserir uma imagem para esse sitio.
Mas o único campo validado é a imagem. Precisava de ajudar para validar se o nome do sitio tem alguma coisa, se o número de contato é um numero, etc.
Aqui vai o código php que insere o sitio:
Código (PHP):
Queria validar se a $nomesitio contém algo, se o $contato é um número e se a $morada tem algo.
Obrigado desde já
Mas o único campo validado é a imagem. Precisava de ajudar para validar se o nome do sitio tem alguma coisa, se o número de contato é um numero, etc.
Aqui vai o código php que insere o sitio:
Código (PHP):
<?php
include('dbconnect.php');
include("resize-class.php");
if(isset($_POST['enviar']))
{ //START IF
$nomesitio = $_POST['nome'];
$contato = $_POST['contato'];
$morada = $_POST['morada'];
$tipo = $_POST['tipo'];
$freguesias = $_POST['freguesias'];
$hora_abertura = $_POST['hora_abertura'];
$minuto_abertura = $_POST['minuto_abertura'];
$hora_fecho = $_POST['hora_fecho'];
$minuto_fecho = $_POST['minuto_fecho'];
$horario = "Das $hora_abertura:$minuto_abertura ás $hora_fecho:$minuto_fecho";
//o nome original do arquivo no computador do utilizador
$arqName = $_FILES['arquivo']['name'];
//o tipo mime do arquivo
$arqType = $_FILES['arquivo']['type'];
//o tamanho do arquivo
$arqSize = $_FILES['arquivo']['size'];
//o nome temporario do arquivo com que foi guardado no servidor
$arqTemp = $_FILES['arquivo']['tmp_name'];
//o codigo de erro associado a este upload de arquivo
$arqError = $_FILES['arquivo']['error'];
//lista de tipos de arquivos permidos
$tiposPermitidos = array('image/gif', 'image/jpeg', 'image/jpg', 'image/png');
//tamanho maximo
$tamanhoPermitido = 6024 * 3000;
if ($arqError == 0)
{
//verifica o tipo de arquivo enviado
if(array_search($arqType, $tiposPermitidos) === false)
{
$retorno = '<span class="error">O tipo de arquivo enviado é inválido!</span>' ;
}
//verifica o tamanho do arquivo enviado
elseif ($arqSize > $tamanhoPermitido)
{
$retorno = '<span class="error">O tamanho do arquivo enviado e maior que o limite!</span>';
}
else
{
$pasta = 'images_sitios/';
//pega a extensao do arquivo enviado
$extensaoTemp = explode('.',$arqName);
$extensao = strtolower(end($extensaoTemp));
//define o nome do arquivo usando um Unix TimesTamp
$nome = time(). '.' . $extensao;
$upload = move_uploaded_file($arqTemp, $pasta . $nome);
if ($upload === true)
{
$ficheiro = $pasta.$nome;
$resizeObj = new resize($ficheiro);
$resizeObj -> resizeImage(800, 600, 'auto');
$resizeObj -> saveImage("images_sitios/$nome", 100);
$resizethumb = new resize($ficheiro);
$resizethumb -> resizeImage(150, 150, 'crop');
$resizethumb -> saveImage("images_sitios/thumbnails/$nome", 100);
}
else
{
$retorno = '<span class="error">Nao foi possivel fazer o upload da imagem!</span>';
}
}
}
if(empty($ficheiro))
{
$retorno = '<span class="error">Insira a imagem!</span>';
}
//verifica se a variavel retorno estiver vazia (nao conter erro)
if(empty($retorno))
{
$query = mysql_query("INSERT INTO sitio (nome_sitio, horario, contato, morada, imagem, id_tipo, id_freguesia) VALUES ('$nomesitio','$horario','$contato','$morada','$nome','$tipo','$freguesias')") or die (mysql_error());
//se a query existe entao a pagina é redireccionada
if($query === true)
{
$sucesso = '<span class="yes">Sitio inserido com sucesso!</span>';
echo $sucesso;
}
}
else
{
echo $retorno;
}
} //END IF
?>
include('dbconnect.php');
include("resize-class.php");
if(isset($_POST['enviar']))
{ //START IF
$nomesitio = $_POST['nome'];
$contato = $_POST['contato'];
$morada = $_POST['morada'];
$tipo = $_POST['tipo'];
$freguesias = $_POST['freguesias'];
$hora_abertura = $_POST['hora_abertura'];
$minuto_abertura = $_POST['minuto_abertura'];
$hora_fecho = $_POST['hora_fecho'];
$minuto_fecho = $_POST['minuto_fecho'];
$horario = "Das $hora_abertura:$minuto_abertura ás $hora_fecho:$minuto_fecho";
//o nome original do arquivo no computador do utilizador
$arqName = $_FILES['arquivo']['name'];
//o tipo mime do arquivo
$arqType = $_FILES['arquivo']['type'];
//o tamanho do arquivo
$arqSize = $_FILES['arquivo']['size'];
//o nome temporario do arquivo com que foi guardado no servidor
$arqTemp = $_FILES['arquivo']['tmp_name'];
//o codigo de erro associado a este upload de arquivo
$arqError = $_FILES['arquivo']['error'];
//lista de tipos de arquivos permidos
$tiposPermitidos = array('image/gif', 'image/jpeg', 'image/jpg', 'image/png');
//tamanho maximo
$tamanhoPermitido = 6024 * 3000;
if ($arqError == 0)
{
//verifica o tipo de arquivo enviado
if(array_search($arqType, $tiposPermitidos) === false)
{
$retorno = '<span class="error">O tipo de arquivo enviado é inválido!</span>' ;
}
//verifica o tamanho do arquivo enviado
elseif ($arqSize > $tamanhoPermitido)
{
$retorno = '<span class="error">O tamanho do arquivo enviado e maior que o limite!</span>';
}
else
{
$pasta = 'images_sitios/';
//pega a extensao do arquivo enviado
$extensaoTemp = explode('.',$arqName);
$extensao = strtolower(end($extensaoTemp));
//define o nome do arquivo usando um Unix TimesTamp
$nome = time(). '.' . $extensao;
$upload = move_uploaded_file($arqTemp, $pasta . $nome);
if ($upload === true)
{
$ficheiro = $pasta.$nome;
$resizeObj = new resize($ficheiro);
$resizeObj -> resizeImage(800, 600, 'auto');
$resizeObj -> saveImage("images_sitios/$nome", 100);
$resizethumb = new resize($ficheiro);
$resizethumb -> resizeImage(150, 150, 'crop');
$resizethumb -> saveImage("images_sitios/thumbnails/$nome", 100);
}
else
{
$retorno = '<span class="error">Nao foi possivel fazer o upload da imagem!</span>';
}
}
}
if(empty($ficheiro))
{
$retorno = '<span class="error">Insira a imagem!</span>';
}
//verifica se a variavel retorno estiver vazia (nao conter erro)
if(empty($retorno))
{
$query = mysql_query("INSERT INTO sitio (nome_sitio, horario, contato, morada, imagem, id_tipo, id_freguesia) VALUES ('$nomesitio','$horario','$contato','$morada','$nome','$tipo','$freguesias')") or die (mysql_error());
//se a query existe entao a pagina é redireccionada
if($query === true)
{
$sucesso = '<span class="yes">Sitio inserido com sucesso!</span>';
echo $sucesso;
}
}
else
{
echo $retorno;
}
} //END IF
?>
Queria validar se a $nomesitio contém algo, se o $contato é um número e se a $morada tem algo.
Obrigado desde já