Mostra Data Início e Data Final da Semana

Segue uma função para encontrar o início e o final da semana em PHP

Espero que no código fonte esteja bem clara a explicação, qualquer dúvida comente.

função:

function get_inicio_fim_semana($numero_semana = "", $ano = "")
{
/* soma o número de semanas em cima do início do ano 01/01/2013 */
$semana_atual = strtotime('+'.$numero_semana.' weeks', strtotime($ano.'0101')); </code>

/*
pega o número do dia da semana
0 - Domingo
...
6 - Sábado
*/
$dia_semana = date('w', $semana_atual);

/*
diminui o dia da semana sobre o dia da semana atual
ex.: $semana_atual: 10/09/2013 terça-feira
$dia_semana: 2 (terça-feira)
$data_inicio_semana: 08/09/2013
*/
$data_inicio_semana = strtotime('-'.$dia_semana.' days', $semana_atual);

/* Data início semana */
$primeiro_dia_semana = date('Y-m-d', $data_inicio_semana);

/* Soma 6 dias */
$ultimo_dia_semana = date('Y-m-d', strtotime('+6 days', strtotime($primeiro_dia_semana)));

/* retorna */
return array($primeiro_dia_semana, $ultimo_dia_semana);
}

chamando a função:

/* número da semana que estamos */
$numero_semana = date('W')-1;</code>

/* ano atual */
$ano_atual = date('Y');

list($data_inicio, $data_final) = get_inicio_fim_semana($numero_semana, $ano_atual);

echo "
<h2>Mostra Data Início e Data Final da Semana</h2>
";

echo "Data de Inicio = ".date('d/m/Y', strtotime($data_inicio));
echo "Data de Fim = ".date('d/m/Y', strtotime($data_final));

Espero que ajudem.

Deixe o seu comentário

Ordenar tabela por linha individual – JQuery

Bom galera, esses dias precisei fazer uma função para movimentar as linhas de uma tabela tanto para cima como para baixo, para o usuário escolher em que posição quer que a linha fique.

Exemplo Funcionando

Ai fiz esse código bem simples utilizando JQuery, e no mesmo expliquei +/- como funciona, qualquer coisa só deixar comentário que respondo.

Em breve farei utilizando PHP e MySQL

<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Ordenar Tabela</title>
        
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
        
        <script type="text/javascript">

        	$(function(){
				//função que faz a linha descer na tabela
				$(".descer").click(function(){
					var objLinha = $(this).parent().parent(); //Pega o objeto linha <tr>
					$(objLinha).next().after(objLinha); //Abaixo da linha clicada, insere a linha clicada
				});
				
				//função que faz a linha subir na tabela
				$(".subir").click(function(){
					var objLinha = $(this).parent().parent(); //Pega o objeto linha <tr>
					$(objLinha).prev().before(objLinha); //Acima da linha clicada, insere a linha clicada
				});				

			});
		
        </script>
        
	</head>

	<body>
		<table border="1" width="300">
			<tr>
				<td width="100">1</td>
				<td width="100"><a href="javascript:void(0)" class="subir">subir</a></td>
				<td width="100"><a href="javascript:void(0)" class="descer">descer</a></td>
			</tr>
			<tr>
				<td>2</td>
				<td><a href="javascript:void(0)" class="subir">subir</a></td>
				<td><a href="javascript:void(0)" class="descer">descer</a></td>
			</tr>
			<tr>
				<td>3</td>
				<td><a href="javascript:void(0)" class="subir">subir</a></td>
				<td><a href="javascript:void(0)" class="descer">descer</a></td>
			</tr>
			<tr>
				<td>4</td>
				<td><a href="javascript:void(0)" class="subir">subir</a></td>
				<td><a href="javascript:void(0)" class="descer">descer</a></td>
			</tr>
		</table>
	</body>
</html>

Abç

1 Comentário

Entendo um pouco sobre Computação nas Nuvens (Cloud computing)

Cloud computing: Também conhecido como computação na nuvem, é um estilo de computação que oferece recursos computacionais (sistema operacional, banco de dados, área de armazenamento…) no modelo pague pelo que usa (flexibilidade).
Normalmente é feito por um terceiro (provedores de serviços de nuvem) e entregue pela internet.

Windowz Azure: Plataforma de computação na nuvem para armazenamento de dados e execução de aplicativos. Com ela, os desenvolvedores podem construir aplicativos e hospedá-los no Windows Azure, recebendo todo o poder da computação na nuvem. Os datacenters do Azure são mantidos pela Microsoft. A plataforma é composta por: Windows Azure (sistema operacional), SQL Azure (banco de dados relacional) e AppFabric (middler de integração).

Computação em cluster: Conjunto de computadores que trabalham em paralelo processandoum algoritmo em comum. Trata-se de um grande computador formado por “n” computadores.

Software como serviço: Chamado também de Software as a Service (SaaS), é um sistema comercial (ou sem fins lucrativos) que oferece um software no formato de um serviço. Em vez de o usuário baixar e instalar um programa, ele o acessa e o usa pela Internet. O hotmail é um exemplo de SaaS.

Virtualização: Elemento chave para computação na nuvem. Os datacenters são suportados por milhares de máquinas virtuais. Seu poder de processamento pode aumentar ou diminuir, de acordo com as necessidades do aplicativo. trabalham me maior ou menor grau, dependendo das tarefas específicas designadas.

7 princípios da computação na nuvem

  • Capacidade virtualmente infinita
  • Previsibilidade consistente
  • Provedor de serviço
  • Resiliência e redundância garantida e transparente
  • Automação e orquestração dos processos TI (Run book Automation /RBA)
  • Otimização de recursos de TI
  • Incentivar comportamentos desejados e prevenir o mau uso de recursos de TI

Créditos a Sérgio Vinícius, de quem copiei isso.

1 Comentário

Utilizando LEFT e RIGHT para cortar texto no Javascript

Olá

É comum em outras linguagem existir os comandos LEFT e RIGHT, que serve para pegar uma certa quantidade(quantidade definida por parâmetro) de caracteres apartir da posição esquerda ou direita.

Por exemplo, tenho o seguinte texto:
Lorem ipsum dolor sit amet

Gostaria de pegar somente o “Lo” (prefixo) e o “et” (sufixo).

Apesar de o javascript já ter o substr que ajuda muito, estou propondo uma coisa mais simples, então para facilitar minha vida criei as seguintes funções, left e right:

//esquerda para direita
String.prototype.left = function()
{
	return this.substr(0,arguments[0]==undefined?1:parseInt(arguments[0]));
}
//direta para esquerda
String.prototype.right = function()
{
	return this.substr(this.length-(arguments[0]==undefined?1:parseInt(arguments[0])),this.length);
}

Vamos ver como funciona, temos o seguinte texto:

var texto = "Lorem ipsum dolor sit amet";

Gostaria de pegar somente as 3 primeiras letras da esquerda para direita

alert(texto.left(3));

Agora da direita para esquerda, gostaria de pegar os 2 últimos caracteres

alert(texto.right(3));

Caso deixe vazio, minha função irá pegar somente o 1º caracter.

Exemplo em funcionamento

até a próxima

2 Comentários

Tutoriais de como criar jogos para IPhone

Olá

Estava dando uma pesquisada na net de como desenvolver jogos para Iphone, de diversos frameworks que encontrei, o que me agradou mais foi o cocos2d, pela documentação, exemplos e conteúdo na internet.

Procurando sobre o cocos2d, encontrado uns 20 vídeos de passo a passo de como iniciar o desenvolvimento:

Cada link abaixo possui 10 vídeos (inglês) que vale apena ver:

Parte 1
Parte 2

Procurando mais, encontrei esse outro vídeo:

Menu simples

Esse vídeo é melhor para começar, pois é explicado em portugues de portugal.

Não cheguei a desenvolver nada, mas ainda espero desenvolver, então deixo a dica para o pessoal.

Até a próxima

Deixe o seu comentário

Plugin JQuery Tooltip – gaTooltip

Olá Pessoal

Desenvolvi esse plugin para mostrar uma ToolTip de forma simples. Apesar de ter vários desenvolvidos pela internet, não encontrei nenhum de forma simples, eficiênte e que me agradasse, então resolvi desenvolver.
Estou publicando para possam utilizar e modificar.

DOWNLOAD do código completo com exemplo

Para visualizar, clique aqui

Forma de utilizar:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <title>gaToolTip</title>
		<style type="text/css">
			body { font-family:Arial; font-size:12px; }
			#gaTool { background-color:#EFEFEF; border:1px solid #F00; color:#000; }
			.gaTool { color:#F00; font-weight:bold; }
        </style>    

		<script type=text/javascript src="http://code.jquery.com/jquery-1.6.min.js"></script>
        <script type=text/javascript src="query.gatooltip-1.0.js"></script>

		<script type="text/javascript">
          $(document).ready(function(){
              $(".gaTool").gaToolTip();
          });
        </script>
    </head>   
    <body>
    	<h1>gaToolTip - Passe o mouse sobre as palavras em vermelho</h1>
		<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo <span class="gaTool" title="Demostração ToolTip">ligula</span> eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis <span class="gaTool" title="?">parturient montes</span>, nascetur ridiculus mus.</p>
    </body>
</html>

Qualquer sugestão ou bugs que encontrarem, se possível me informem.

Até a próxima.

6 Comentários

Autocomplete + JQuery + ASP – Atualizado

Olá

Pelo que percebi e pelo pessoal que entrou em contato, o meus post sobre Autocomplete ficou desatualizado e com os links quebrados, então resolvi atualizar ele e acrescentar algumas coisas novas e interessantes.

A imagem a seguir mostrar um exemplo de aonde queremos chegar:

Vamos começar pelo banco de dados

Banco de dados que estou utilizando é o Microsoft SQL SERVER 2008

Código para criação da tabela:

create table contatos (
	codigo    int           not null,
	nome      varchar(100)  not null,
	telefone  varchar(11)   null,
	email     varchar(100)  null
)
go

Agora vamos inserir alguns dados manualmente

INSERT INTO contatos(codigo, nome, telefone, email) VALUES (1, 'Mateus', '4833552211','mateusgamba@gmail.com')
INSERT INTO contatos(codigo, nome, telefone, email) VALUES (2, 'Monique', '4888040521','monique@hotmail.com')
INSERT INTO contatos(codigo, nome, telefone, email) VALUES (3, 'Marcelo', '4833552123','marcelo@gmail.com')
INSERT INTO contatos(codigo, nome, telefone, email) VALUES (4, 'Gledson', '4833122378','gledson@yahoo.com')

Com o banco de dados pronto, vamos dar início ao desenvolvimento.

Vamos precisar do framework Jquery e do plugin Autocomplete com seu CSS

Agora irei mostrar 3 exemplos interessantes e diferentes de usar o Autocomplete com Jquery.

1 – Exemplo mais simples:

exemplo01.asp

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Auto Complete - Exemplo 1</title>

        <link href="http://jquery.bassistance.de/autocomplete/jquery.autocomplete.css" type="text/css" rel="stylesheet" />
        <script src="http://code.jquery.com/jquery-1.5.2.min.js" language="javascript"></script>
        <script src="http://jquery.bassistance.de/autocomplete/jquery.autocomplete.js" language="javascript"></script>

        <script type="text/javascript" language="javascript">

			$(document).ready(function(){
				//Ao digitar executar essa função
				$("#nome").focus().autocomplete("exemplo01_nomes.asp")
			});
			
		</script>
    </head>

    <body>
    	<h1>Autocomplete com Jquery em ASP - Exemplo 1</h1>
    	Nome: <input name="nome" id="nome" type="text" autocomplete="off" />
    </body>
</html>

exemplo01_nomes.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
	' Parametros de Conexao ao Banco
	SERVIDOR_DO_BANCO = "localhost"
	NOME_DO_BANCO = "agenda"
	USUARIO_DO_BANCO = "mateus"
	SENHA_DO_BANCO = "123456"

	' Conexao com o Banco de dados
	Dim conexao
	Set conexao = Server.CreateObject("ADODB.Connection")
	conexao.Open = "Provider=MSDASQL;Driver={SQL Server};Server="&SERVIDOR_DO_BANCO&";Database="&NOME_DO_BANCO&";UID="&USUARIO_DO_BANCO&";PWD="&SENHA_DO_BANCO&";" 'Efetua a Conexao

	' SQL de pesquisa
	sql = "SELECT codigo, nome FROM contatos ORDER BY nome ASC"
	Set query = conexao.execute(sql)
	While Not query.eof
		' Lista o nome
		response.write query("nome")&"|"&query("codigo")&vbCrLf
		query.movenext
	Wend

	Set query = Nothing
	Set conexao = Nothing
%>

Esse primeiro exemplo mostra de uma forma simples como utilizar o autocomplete, não há necessidades de passar parâmetros, pois é carregado os 10 primeiros nomes da resposta do SQL em uma lista do javascript, assim não precisando consultar no banco de dadis a cada caracter digitado.

2 – Exemplo mais completo

exemplo02.asp

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Auto Complete - Exemplo 2</title>

        <link href="http://jquery.bassistance.de/autocomplete/jquery.autocomplete.css" type="text/css" rel="stylesheet" />
        <script src="http://code.jquery.com/jquery-1.5.2.min.js" language="javascript"></script>
        <script src="http://jquery.bassistance.de/autocomplete/jquery.autocomplete.js" language="javascript"></script>

        <script type="text/javascript" language="javascript">

			$(document).ready(function(){
				//Ao digitar executar essa função
				$("#nome").focus().autocomplete("exemplo02_nomes.asp",{
					minChars: 1 //Número mínimo de caracteres para aparecer a lista
				  , matchContains: true //Aparecer somente os que tem relação ao valor digitado
				  , scrollHeight: 220 //Altura da lista dos nomes
				  , selectFirst: true //Vim o primeiro da lista selecionado
				  , mustMatch: true //Caso não existir na lista, remover o valor
				  , delay: 0 //Tempo para aparecer a lista para 0, por padrão vem 200
				  });
			});

		</script>
    </head>

    <body>
    	<h1>Autocomplete com Jquery em ASP - Exemplo 2</h1>
    	Nome: <input name="nome" id="nome" type="text" autocomplete="off" />
    </body>
</html>

exemplo02_nomes.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
	' Parametros de Conexao ao Banco
	SERVIDOR_DO_BANCO = "localhost"
	NOME_DO_BANCO = "agenda"
	USUARIO_DO_BANCO = "mateus"
	SENHA_DO_BANCO = "123456"

	' Conexao com o Banco de dados
	Dim conexao
	Set conexao = Server.CreateObject("ADODB.Connection")
	conexao.Open = "Provider=MSDASQL;Driver={SQL Server};Server="&SERVIDOR_DO_BANCO&";Database="&NOME_DO_BANCO&";UID="&USUARIO_DO_BANCO&";PWD="&SENHA_DO_BANCO&";" 'Efetua a Conexão
	
	valor = Replace(Request.QueryString("q"),"'","") 'Parâmetro do campo nome, o "q" é padrão do componente autocomplete

	' SQL de pesquisa
	sql = "SELECT codigo, nome FROM contatos where nome like '"&valor&"%' ORDER BY nome ASC"
	Set query = conexao.execute(sql)
	While Not query.eof
		' Lista o nome
		response.write query("nome")&"|"&query("codigo")&vbCrLf
		query.movenext
	Wend
	Set query = Nothing
	Set conexao = Nothing
%>

Esse exemplo permite trazer somente os nomes que existem no banco de dados, caso não exista, é limpado o campo automaticamente.

3 – Exemplo retornando valores

exemplo03.asp

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Auto Complete - Exemplo 3</title>

        <link href="http://jquery.bassistance.de/autocomplete/jquery.autocomplete.css" type="text/css" rel="stylesheet" />
        <script src="http://code.jquery.com/jquery-1.5.2.min.js" language="javascript"></script>
        <script src="http://jquery.bassistance.de/autocomplete/jquery.autocomplete.js" language="javascript"></script>

        <script type="text/javascript" language="javascript">

			$(document).ready(function(){
				//Ao digitar executar essa função
				$("#nome").focus().autocomplete("exemplo03_nomes.asp",{
					  minChars: 1 //Número mínimo de caracteres para aparecer a lista
					, matchContains: true //Aparecer somente os que tem relação ao valor digitado
					, scrollHeight: 220 //Altura da lista dos nomes
					, selectFirst: true //Vim o primeiro da lista selecionado
					, mustMatch: true //Caso não existir na lista, remover o valor
					, delay: 0 //Tempo para aparecer a lista para 0, por padrão vem 200
				});
				
				//Quando selecionar valor pegar retorno. O retorno nesse caso são: Nome|Código
				$("#nome").result(function(event, retorno) {
					if (retorno==undefined)
						$("#codigo").val("");
					else
						$("#codigo").val(retorno[1]);
				});				
			});

		</script>
    </head>

    <body>
    	<h1>Autocomplete com Jquery em ASP - Exemplo 3</h1>
    	Nome: <input name="nome" id="nome" type="text" autocomplete="off" />
        <br/>
        <br/>
        Código: <input name="codigo" id="codigo" type="text" disabled="disabled" />
    </body>
</html>

exemplo03_nomes.asp

<%
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
	' Parametros de Conexao ao Banco
	SERVIDOR_DO_BANCO = "localhost"
	NOME_DO_BANCO = "agenda"
	USUARIO_DO_BANCO = "mateus"
	SENHA_DO_BANCO = "123456"

	' Conexao com o Banco de dados
	Dim conexao
	Set conexao = Server.CreateObject("ADODB.Connection")
	conexao.Open = "Provider=MSDASQL;Driver={SQL Server};Server="&SERVIDOR_DO_BANCO&";Database="&NOME_DO_BANCO&";UID="&USUARIO_DO_BANCO&";PWD="&SENHA_DO_BANCO&";" 'Efetua a Conexão
	
	valor = Replace(Request.QueryString("q"),"'","") 'Parâmetro do campo nome, o "q" é padrão do componente autocomplete

	' SQL de pesquisa
	sql = "SELECT codigo, nome FROM contatos where nome like '"&valor&"%' ORDER BY nome ASC"
	Set query = conexao.execute(sql)
	While Not query.eof
		' Lista o nome
		response.write query("nome")&"|"&query("codigo")&vbCrLf
		query.movenext
	Wend
	Set query = Nothing
	Set conexao = Nothing
%>

Esse exemplo é bem semelhante ao Exemplo 2, a única diferença é que retorna o codigo do contato para o campo Código. Caso não exista o valor digitado, além de limpar o campo Nome é limpado o campo Código também.

Clique aqui e baixe os exemplos

É isso ai pessoal.

Até a próxima.

27 Comentários

Seguir

Get every new post delivered to your Inbox.