CrisLib - Auxílio no desenvolvimento em php

Novo aqui no site? Talvez gostaria de assinar o
RSS feed do site?

Publicado em: 20/06/2007
Área: PHP
Visualizações: 2.168
Comentário(s): 1

imprimir envie por e-mail compartilhe
Olá caro(a) amigo(a), esses dias ando sem tempo pois peguei três projetos de uma vez para fazer, e por isso não elaborei nenhuma coluna para postar aqui, mas embreve estarei postando novidades.

Hoje irei apresentar uma biblioteca simples e muito boa para quem esta começando no php, essa biblioteca chama-se CrisLib e foi desenvolvida por meu amigo Tiago Floriano, e nessa coluna estarei apresentando-a, está bem comentada e facil de entender.

<?php
##################
### crisLib - biblioteca de auxilio no desenvolvimento em php
### funções
### - segurança
### - banco de dados
### - arquivos
### - protocolos
### - ajax

##################
### SEGURANÇA

# - Nome: URL ?pagina em vez de ?page=pagina
# - modo de utilização: chamando a função da seguinte forma:
//$path = url($_SERVER['REQUEST_URI" target="_blank">);
//include($path);
function url($uri,$pasta){
if($uri == "/$pasta"){ $uri = "/?home"; }
$uri = explode("?",$uri);
$uri = explode("&",$uri[1]);
$uri = $uri[0];
$arquivo = "pages/".$uri.".php";//pages é o nome da pasta onde ficarão os arquivos internos que guardam o conteúdo, que serão inseridos no arquivo principal, no lugar do conteúdo. Mude para o nome da pasta onde você guarda os arquivos.
if(is_file($arquivo)){
$path = $arquivo;
}else{
$path = "pages/erro.php";
}
return $path;
}

# - Nome: SQL-Injection
function inj($termo){
if(function_exists(mysql_real_escape_string)){
$termo = mysql_real_escape_string($termo);
}else{
$termo = htmlspecialchars($termo);
}
return $termo;  
}

# - Nome: Autentica usuário
function login($usuario,$senha,$tabela_de_usuarios,$tabela_de_sessoes,$destino){
//verifica se o usuário e a senha constam na tabela
$sel = sel($tabela,"usuario = '$usuario' and senha = '$senha'","","");
if(mysql_num_rows($sel) == 0){//se não existir, mostra a mensagem abaixo
echo "Este usuário não existe!";
exit; //encerra a execução do arquivo, não permitindo que o usuário prossiga
}else{
//guarda usuario e senha
$_SESSION['usuario'] = $usuario;
$_SESSION['senha'] = $senha;
//guarda um valor de sessão único para gravar que o usuário está logado
if($tabela_de_controle_de_sessoes != ""){
$_SESSION['idsession'] = date("H") + date("i") + date("s") + date("d") + date("m") + date("Y");
$idsession = $_SESSION['idsession'];
ins("sessao","usuario, senha, sessao, status","'$usuario', '$senha', '$idsession','online'");
}
echo "<meta http-equiv="refresh" content="0;URL=$destino">";
}
}

# - Nome: Desautentica usuário
function logoff($usuario,$senha,$tabela,$tabela_de_sessoes){
if($tabela_de_sessoes != ""){
$sel = sel($tabela_de_sessoes,"usuario = '$usuario and senha = '$senha'","","");

}
}

# - Nome: verifica se o usuário está autenticado
function autentica($tabela,$destino,$tabela_de_sessoes){
$usuario = $_SESSION['usuario'];
$senha = $_SESSION['senha'];
$sel = sel($tabela,"usuario = '$usuario' and senha = '$senha'","","");
if(mysql_num_rows($sel) == 0){
echo "Este usuário não existe!";
exit;
}else{
if($tabela_de_sessoes != ""){
$sessao = sel("sessao","usuario = '$usuario' and senha = '$senha'","","");
if(mysql_num_rows($sessao) == 0){
echo "Você não estã logado!";
echo "<meta http-equiv="refresh" content="0;URL=login.php?redirect=$destino">";
exit;
}
}
}
}

##################
### BANCO DE DADOS

# - Nome: Conectar ao banco de dados
function con($usuario,$senha){
if(!mysql_connect("localhost",$usuario,$senha)){
echo "Erro ao conectar no db.";
}
}

# - Nome: Selecionando um db
function db($db){
if(!mysql_select_db($db)){
echo "Erro ao selecionar db.";
}
}

# - Nome: Selecionar
function sel($tabela,$condicoes,$ordem,$limite){
$query = "SELECT * FROM $tabela";
if($condicoes != "") {
$query .= " WHERE $condicoes";
}
if($ordem != ""){
$query .= " ORDER BY $ordem";
}
if($limite != ""){
$query .= " LIMIT $limite";
}
$sql = mysql_query($query) or die($erro_select);
return $sql;
}

# - Nome: Paginação
function pag($num_result,$tipo){//$num_result = número de resultados por página / $tipo = numerada ou com botão próximo e avançar

}

# - Nome: Busca interna
function busca($tabela,$campo,$termo,$ordem,$num_result,$tipo){
$query = "SELECT * FROM $tabela WHERE $campo LIKE '%$termo%' ORDER BY $ordem";
$sql = pag($num_result,$tipo);
return $sql;
}

# - Nome: Inserir
function ins($tabela,$campo,$valor){
$query = "INSERT INTO $tabela ($campo) VALUES ($valor)";
if(mysql_query($query)){
$sql = 0;//ok
}else{
$sql = 1;//erro
}
return $sql;
}

# - Nome: Atualizar
function upd($tabela,$dados,$id){
$query = "UPDATE $tabela SET $dados WHERE id = '$id'";
if(mysql_query($query)){
$sql = 0;//ok
}else{
$sql = 1;//erro
}
return $sql;
}

# - Nome: Deletar
function del($tabela,$id){
$query = "DELETE FROM $tabela WHERE id = '$id'";
if(mysql_query($query)){
$sql = 0;//ok
}else{
$sql = 1;//erro
}
return $sql;
}

# - Nome: exibe dados em colunas
function table($tabela,$ordem_de_exibicao,$total_a_ser_exibido,$num_de_colunas){
echo "<table width="100%"  border="0" cellspacing="0" cellpadding="0">";
$select_cat = mysql_query("SELECT * FROM $tabela ORDER BY $ordem_de_exibicao DESC LIMIT $total_a_ser_exibido") or die($erro_select);
while($row = mysql_fetch_array($select_cat)){
$cont = $cont + 1;
$numresult = $numresult + 1;
if($cont == 1){
echo "<tr>";
}

echo "<td>";

//conteúdo
echo "CONTEUDO";
//fim conteudo

echo "</td>";

if($cont == $colunas){
echo "</tr>";
$cont = 0;
}
if(mysql_num_rows($select_cat) == $numresult && mysql_num_rows($select_cat) < $cont){
$queb = $colunas - $cont;
$num = $num + 1;
while($num < $queb){
echo "<td></td>";
}
echo "</tr>";
}
}
echo "</table>";
}

##################
### ARQUIVOS

# - Nome: Upload de arquivos
function up($arquivo,$destino,$extensoes){//para permitir todas extensões de arquivos, deixe a $extensoes em branco, se não, informe todas as extensões permitidas

}

# - Nome: Gera miniatura de imagem JPG, porém a idéia é pegar o mime-type do arquivo, ver qual tipo ele é e criar a miniatura de acordo com seu tipo (gif, png, jpg...)
function im($url_imagem,$altura,$largura){
// **** configurações da miniatura *******
$tamanho_fixo = "S";    // S ou N
$largura_fixa = $w;    // usado somente com tamanho_fixo=S
$altura_fixa = $h;    // usado somente com tamanho_fixo=S

$arquivo_miniatura = explode('.', $imagem);
// monta o nome do arquivo resultante
if(!file_exists($arquivo_miniatura[0]."_mini.jpg" or ImagesX($imagem) != $w)){
$arquivo_miniatura = $arquivo_miniatura[0]."_mini.jpg";

// lê a imagem de origem e obtém suas dimensões
$img_origem = ImageCreateFromJPEG($imagem);
$origem_x = ImagesX($img_origem);
$origem_y = ImagesY($img_origem);

// se não for tamanho fixo, calcula as dimensões da miniatura
if($tamanho_fixo=="S")
{
$x = $largura_fixa;
$y = $altura_fixa;
}
else
{
$x = intval ($origem_x * $percentual/100);
$y = intval ($origem_y * $percentual/100);
}

// cria a imagem final, que irá conter a miniatura
$img_final = ImageCreateTrueColor($x,$y);

// copia a imagem original redimensionada para dentro da imagem final
ImageCopyResampled($img_final, $img_origem, 0, 0, 0, 0, $x+1, $y+1, $origem_x , $origem_y);

// salva o arquivo
ImageJPEG($img_final, $arquivo_miniatura);

// libera a memória alocada para as duas imagens
ImageDestroy($img_origem);
ImageDestroy($img_final);
$imagem = $arquivo_miniatura;
}else{
$arquivo_miniatura = explode('.', $imagem);
$arquivo_miniatura = $arquivo_miniatura[0]."_mini.jpg";
$imagem = $arquivo_miniatura;
}
return $imagem;
}

# - Nome: Exibe arquivos de uma pasta
function pasta($diretorio){

}

# - Nome: Edita arquivo
function arq($arquivo){

}

##################
### PROTOCOLOS

# - Nome: envia E-mail
function sendmail($destino,$assunto,$mensagem,$remetente,$tipo,$protocolo){//o $tipo é se o e-mail é html ou somente texto, o $protocolo é se é usando a função mail ou smtp

}

# - Nome: Criar conta de e-mail no cPanel
function criamail($email,$senha){

}

# - Nome: Deleta e-mail do cPanel
function delmail($email,$senha){

}

##################
### PLUGINS
/*
para adicionar novas extensões, adicione as seguintes linhas abaixo:

if(file_exists("./plugin/nomedoarquivo.php")){
include("./plugin/nomedoarquivo.php");
}

*/


# - Nome: pesquisa domínios nacionais e internacionais com detalhes de whois ou não
# - Notas: este plugin foi retirado e adaptado do script http://www.phpbrasil.com/scripts/script.php/id/1170
if(file_exists("./plugin/whois.php")){
include("./plugin/whois.php");
}

# - Nome: previsão do tempo
# - Notas: estou procurando a origem deste script, caso o autor apareça, por favor, entre em contato para que eu possa colocar os créditos aqui.
if(file_exists("./plugin/previsao_tempo.php")){
include("./plugin/previsao_tempo.php");
}
?>


Download da Biblioteca + Plugins.

Ta aí, qualquer dúvida pode perguntar que respondo, embreve estarei postando mais colunas!

Preencha o formulário para comentar:
Nome:*

E-mail:* (não será exibido)

Site: (http://)

Comentário:*

Deseja receber os comentários no e-mail?

Anti-spam: (nova imagem)





Tiago Floriano

   - Publicado em: 21/06/2007 - 10:52

vlw pela divulgação ;) Qualquer dúvida, também me disponho a ajudar! Qualquer colaboração também é bem vinda, já que a lib está em desenvolvimento ainda. abraços e obrigado mais uma vez Igor! :)

 

Autor da matéria
Igor Diniz
Eu sou www.igordiniz.com.br :D O mais bonito de todos os colunistas da Oficina da Net ;)

Todas as matérias de Igor Diniz

Publicidade
Seguir o Oficina da Net
RSS

RSS

RSS
Top matérias do mês
Matérias relacionadas
Tags

© 2005 - 2009 - Oficina da Net - v 4.0 - É proibida a reprodução parcial ou completa do conteúdo deste site sem autorização por escrito. Resolução adequada: 1024x768px.