![]() |
|
||||
Código-Fonte Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimentoDiga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
|||||
Você está aqui: Cards de Hidrostática |
||
|
||
|
|
||
C ::: Dicas & Truques ::: Strings e Caracteres |
Como escrever uma função C personalizada que copia os caracteres de uma string para outra stringQuantidade de visualizações: 8794 vezes |
Quando precisamos copiar os caracteres de uma string para outra string em C, geralmente usamos a função strcpy(). Para que você entenda como esta função realmente funciona, o código abaixo mostra como escrever uma função personalizada que realiza tal tarefa. Estude-a cuidadosamente. É uma boa forma de entender como percorrer os caracteres de uma string usando ponteiros:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// função personalizada que copia os caracteres de
// uma string para outra
char *str_copy(char *destino, const char *origem){
while(*destino++ = *origem++){
;;
}
return (destino - 1);
}
int main(int argc, char *argv[]){
char frase1[] = "Gosto de PHP";
char frase2[50]; // pode receber até 49 caracteres
// copia a primeira frase para a segunda
str_copy(frase2, frase1);
// exibe o resultado
printf(frase2);
puts("\n\n");
system("PAUSE");
return 0;
}
Ao executar este código C nós teremos o seguinte resultado: Gosto de PHP |
jQuery ::: Dicas & Truques ::: AJAX |
Apostila jQuery - Quais as diferenças entre os métodos ajax(), get() e post() do jQuery?Quantidade de visualizações: 11133 vezes |
|
Existem algumas diferenças substanciais entre os métodos ajax(), get() e post(). Conhecê-las e saber quando usar cada um destes métodos poderá tornar seus códigos mais dinâmicos e eficientes. O método ajax() é o mais completo para requisições HTTP e pode ser usado com mais de um dezena de parâmetros. Este método é considerado um método de nível baixo (low level) já que permite um maior controle sobre a requisição AJAX. Além disso, se precisamos de mais flexibilidade, este é o método a ser usado. Os métodos get() e post() são métodos de nível mais alto (higher level) e aceitam pouco mais que três parâmetros cada um. Use estes métodos quando não precisar de muito controle sobre a requisição AJAX. Estes métodos, por exemplo, não fornecem formas de tratar possíveis erros na requisição HTTP. Nesta seção você encontrará exemplos de cada um desses métodos. |
PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como ordenar um array em PHP usando a função sort() - PHP para iniciantesQuantidade de visualizações: 9758 vezes |
|
Em várias situações nós precisamos ordenar os elementos de um vetor de inteiros, de caracteres, de strings, etc. Para isso nós podemos usar a função sort() da linguagem PHP. Veja o código a seguir:
<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
// um vetor com quatro elementos
$pessoas = array("Kelly", "Alice", "Mônica", "Cíntia");
// mostra os elementos sem ordenação
echo "Sem ordenar: ";
foreach($pessoas as $pessoa){
echo $pessoa . ", ";
}
// vamos ordenar o vetor em ordem alfabética
// crescente
sort($pessoas);
// mostra os elementos ordenados
echo "<br><br>Ordenados: ";
foreach($pessoas as $pessoa){
echo $pessoa . ", ";
}
?>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: Sem ordenar: Kelly, Alice, Mônica, Cíntia Ordenados: Alice, Cíntia, Kelly, Mônica Note que a função sort() requer o vetor (array) a ser ordenado e uma flag opcional indicando como a ordenação deverá ser feita. Esta flag pode ser um dos seguintes valores: SORT_REGULAR - padrão, compara os itens normalmente (não modifica o tipo). SORT_NUMERIC - compara os items numericamente. SORT_STRING - compara os itens como strings. SORT_LOCALE_STRING - compara os itens como strings, utilizando o locale atual. Utiliza o locale que pode ser modificado com setlocale(). SORT_NATURAL - compara os itens como strings utilizando "ordenação natural" tipo natsort(). SORT_FLAG_CASE - pode ser combinado (bitwise OR) com SORT_STRING ou SORT_NATURAL para ordenar strings sem considerar maiúsculas e minúsculas. |
Firebird ::: Dicas & Truques ::: Tipos de Dados |
Como usar o tipo de dados BLOB do Firebird para a gravação de imagens, vídeos e arquivos de músicaQuantidade de visualizações: 19253 vezes |
|
Um BLOB é um tipo de dados que permite armazenar grandes informações no formato binário (Binary Large OBject). Campos deste tipo podem conter dados binários ou ASCII, por exemplo, grandes arquivos de texto, documentos para o processamento de dados, arquivos de programas CAD, imagens e gráficos, vídeos, arquivos de música, etc. O tamanho de um BLOB é quase ilimitado, uma vez que eles podem ser armazenados utilizando-se várias páginas. Isso assume, contudo, que um tamanho de página suficiente tenha sido fornecido para a base de dados. Por exemplo, usando uma página de 1kb, o tamanho do BLOB não pode exceder 0,5Gb. Se usarmos um tamanho de página de 4Kb, o tamanho do BLOB está limitado a 8Gb. O Firebird suporta dois tipos pré-definidos de BLOB, diferenciados pelo atributo sub-type (palavra-chave SQL SUB_TYPE): a) BLOB SUB_TYPE 0 - Este é o tipo BLOB genérico para o armazenamento de qualquer tipo de dados, incluindo texto. Geralmente chamado de "BLOB binário sem registro de tipo". b) BLOB SUB_TYPE 1 (BLOB SUB_TYPE TEXT) - Sub-tipo mais especializado para o armazenamento de texto puro. É equivalente aos tipos CLOB e MEMO implementados em alguns bancos de dados (DBMS). É recomendado para uso com interfaces de aplicações tais como componentes RAD ou motores de pesquisa que fornecem um tratamento especial para tais tipos. Veja um comando DDL CREATE TABLE que cria uma tabela contendo um campo do tipo BLOB (usando o sub-tipo text): CREATE TABLE COMPROMISSOS ( ID INTEGER NOT NULL, DESCRICAO BLOB SUB_TYPE 1 SEGMENT SIZE 4096 NOT NULL, DATA_HORA TIMESTAMP NOT NULL ); Aqui nós temos uma tabela com três campos: ID é do tipo INTEGER, DESCRICAO é do tipo BLOB com o sub-tipo 1 e DATA_HORA é do tipo TIMESTAMP. Veja agora um comando DML INSERT INTO que insere um registro nesta tabela: INSERT INTO COMPROMISSOS VALUES(10, 'REUNIÃO COM CLIENTE - SÃO PAULO', '2010-12-02 12:30:00'); Note que os valores para campos do tipo BLOB devem ser fornecidos entre aspas simples. Agora, veja um comando SQL DML SELECT que lista o registro inserido anteriormente: SELECT * FROM COMPROMISSOS; Este comando vai gerar o seguinte resultado: ID DESCRICAO DATA_HORA 10 REUNIÃO COM CLIENTE - SÃO PAULO 2/12/2010 12:30:00 |
MySQL ::: Dicas & Truques ::: Tipos de Dados |
Como usar o tipo de dados TINYINT do MySQLQuantidade de visualizações: 21518 vezes |
|
O tipo de dados TINYINT do MySQL é usado quando precisamos armazenar valores inteiros que se encaixem na faixa de -128 a 127. Este tipo ocupa 1 byte de espaço (8 bits). Veja um trecho de código no qual criamos uma tabela MySQL chamada produtos contendo três campos: CREATE TABLE produtos( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, categoria TINYINT UNSIGNED NOT NULL, nome` VARCHAR(45) NOT NULL, PRIMARY KEY(id) ) ENGINE = InnoDB; Aqui nós usamos o tipo TINYINT para a categoria do produto. Isso quer dizer que poderemos ter no máximo 127 categorias diferentes no sistema. Mas, note o uso do modificador UNSIGNED após o nome do tipo de dados. Este modificador faz com que o valor seja somente positivo, o que altera a faixa de valores positivos para 0 até 255. Valores negativos não serão permitidos. Veja agora uma instrução SQL INSERT que insere um novo produto na tabela recém-criada: INSERT INTO produtos VALUES(null, 23, 'CAMISETA REGATA AX'); Se o valor fornecido para a categoria estiver fora da faixa permitida para um TINYINT você verá a seguinte mensagem de erro: Out of range value adjusted for column 'categoria' at row 1 (Erro: 1264) Vamos verificar o comportamento deste tipo de dados em uma função MySQL? Veja o código que cria uma função somar(): DELIMITER $$ DROP FUNCTION IF EXISTS somar $$ CREATE FUNCTION somar(a TINYINT, b TINYINT) RETURNS TINYINT BEGIN RETURN a + b; END $$ DELIMITER ; Veja que os parâmetros e o retorno da função são do tipo TINYINT. Eis uma demonstração de como chamá-la: SELECT somar(4, 3) AS soma; Experimente fornecer valores que, quando somados, excedam a capacidade de um TINYINT e observe o comportamento da função. Para finalizar, note que é comum informarmos o tipo TINYINT com um valor inteiro em parênteses, por exemplo, TINYINT(2). Este número nos parênteses não interfere em nada nos valores a serem armazenados. Ele é usado para controlar a largura do campo na exibição do valor nos resultados de uma query SELECT ou como um lembrete da quantidade de dígitos a serem usados no campo. |
Veja mais Dicas e truques de MySQL |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







