Hoje o texto vai ser rapidinho. Como marcar e desmarcar varios checkbox de uma unica vez. Vou dar duas formas de fazer isso: a primeira utilizando javascript puro e a segunda com jquery.* Utilizando puramente javascript:<html><head> <script language="javascript"> function checkAll(theField) { for(var i=0;i<=document.getElementById("form").length;i++) { if(document.getElementById("form")[i].name=="check") document.getElementById("form")[i].checked=theField.checked; } } </script></head><body><form id="form"> <input type="checkbox" name="check" onclick="checkAll(this);">Todos <br /><br /> <input type="checkbox" name="check">1 <br /> <input type="checkbox" name="check">2 <br /> <input type="checkbox" name="check">3 <br /> <input type="checkbox" name="check">4 <br /> <input type="checkbox" name="check">5 <br /></form></body></html>---------------------------------------------------------------------* Utilizando jQuery<html><head> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script language="javascript"> $(document).ready(function() { $("#checkAll").click(function() { $("input[name='check']").attr('checked', $(this).attr('checked')); }); }); </script></head><body><form id="form"> <input type="checkbox" name="checkAll" id="checkAll">Todos <br /><br /> <input type="checkbox" name="check">1 <br /> <input type="checkbox" name="check">2 <br /> <input type="checkbox" name="check">3 <br /> <input type="checkbox" name="check">4 <br /> <input type="checkbox" name="check">5 <br /></form></body></html> Muito comum nos cadastros de clientes, fornecedores, transportadoras ou seja la o que for, e colocar em um mesmo campo o CPF ou o CNPJ que estamos cadastrando. Como tudo na vida tem o lado bom e o ruim, aqui nao vai ser diferente. Um do problemas, e saber se aquele cadastro e de pessoa fisica ou juridica. Mas pra que eu quero saber isso? Como diz a propaganda de uma operadora, nao sao as respostas que fazem o mundo girar, mas sim as perguntas. Como o mySQL nao faz isso de uma forma automatica, poderemos ter isso via programacao do sistema pois tem inumeras funcoes para detectar isso seja em PHP, ASP, JAVA ou qualquer que seja a linguagem. Mas hoje, exatamente hoje, quero essa resposta independente de linguagem, via banco de dados. Entao, vamos a ela.Para isso, basta criarmos uma funcao. Neste caso vou dar o nome de validarCpf. CREATE FUNCTION `validarCpf`(CPF CHAR(14)) RETURNS doubleBEGIN DECLARE INDICE INT; DECLARE SOMA INT; DECLARE DIG1 INT; DECLARE DIG2 INT; DECLARE CPF_TEMP VARCHAR(11); DECLARE DIGITOS_IGUAIS CHAR(1); DECLARE RESULTADO CHAR(1); SET RESULTADO = FALSE; /* Verificando se os digitos sao iguais */ SET CPF_TEMP = SUBSTRING(CPF,1,1); SET INDICE = 1; SET DIGITOS_IGUAIS = 'S'; IF (LENGTH(CPF)>11) THEN SET DIGITOS_IGUAIS = 'S'; ELSE SET DIG1=LENGTH(CPF); WHILE (DIG1<=12) DO SET CPF=CONCAT("0",CPF); SET DIG1=DIG1+1; END WHILE; SET CPF=RIGHT(CPF,11); WHILE (INDICE <= 11) DO IF (SUBSTRING(CPF,INDICE,1) <> CPF_TEMP) Then SET DIGITOS_IGUAIS = 'N'; END IF; SET INDICE = INDICE + 1; END WHILE; END IF; /*Caso os digitos nao sejam todos iguais Comeco o calculo do digitos*/ IF (DIGITOS_IGUAIS = 'N') THEN /*Calculo do 1o digito*/ SET SOMA = 0; SET INDICE = 1; WHILE (INDICE <= 9) DO SET Soma = Soma + CAST(SUBSTRING(CPF,INDICE,1) AS UNSIGNED) * (11 - INDICE); SET INDICE = INDICE + 1; END WHILE; SET DIG1 = 11 - (SOMA % 11); IF (DIG1 > 9) THEN SET DIG1 = 0; END IF; -- Calculo do 2o digito } SET SOMA = 0; SET INDICE = 1; WHILE (INDICE <= 10) DO SET Soma = Soma + CAST(SUBSTRING(CPF,INDICE,1) AS UNSIGNED) * (12 - INDICE); SET INDICE = INDICE + 1; END WHILE; SET DIG2 = 11 - (SOMA % 11); IF DIG2 > 9 THEN SET DIG2 = 0; END IF; --