Script mais básico:
<script>
function selecionar_tudo(){
for (i=0;i<document.procurado.elements.length;i++)
if(document.procurado.elements[i].type == "checkbox")
document.procurado.elements[i].checked=1
}
function deselecionar_tudo(){
for (i=0;i<document.procurado.elements.length;i++)
if(document.procurado.elements[i].type == "checkbox")
document.procurado.elements[i].checked=0
}
</script>
No HTML:
<input type=button onclick='selecionar_tudo()' value='Marcar' class=preto />
<input type=button onclick='deselecionar_tudo()' value='Desmarcar' class=preto />
Lembrar que "procurado" é o "name" do form...
Script mais complexo:
Colocar este script no topo da sua webpage:
<script>
function Marcar(quem,valor,j) {
for (i=1; i<=j; i++) {
p = quem+i;
document.getElementsByName(p)[valor].checked = true;
}
}
function DesMarcar(quem,valor,j) {
for (i=1; i<=j; i++) {
p = quem+i;
document.getElementsByName(p)[valor].checked = false;
}
}
</script>
O HTML deve ser:
<input type=checkbox name=id1 value=1 /> Papel
<input type=checkbox name=id2 value=2 /> Fruta
<input type=checkbox name=id3 value=3 /> Paisagem
<input type=radio name='mma_info' value=1 onclick=Marcar('id',0,3); /> SIM (Repetir a mesma informação para todos)
ou Não <input type=radio name='mma_info' value=0 onclick=DesMarcar('id',0,3); />
O funcionamento do onclick:
id == nome do campo
0 == posição (no caso de checkbox sempre 0)
3 == quantidade de campos
terça-feira, 7 de dezembro de 2010
terça-feira, 19 de outubro de 2010
ASP - Formulario q funciona com Flash
<%
Option Explicit
Response.Expires = 0
Dim Email, xEmail
Set Email=Server.Createobject("CDONTS.NewMail")
Email.From=Request.Form("email")
Email.To="seu@email.com.br"
Email.Subject= "Contato - Site"
xEmail = chr(10) & "Nome - " & Request.Form("nome") & CHR(13) & CHR(10)
xEmail = xEmail & "Endereço - " & Request.Form("endereco") & CHR(13) & CHR(10)
xEmail = xEmail & "Cidade - " & Request.Form("cidade") & CHR(13) & CHR(10)
xEmail = xEmail & "Estado - " & Request.Form("estado") & CHR(13) & CHR(10)
xEmail = xEmail & "E-mail - " & Request.Form("email") & CHR(13) & CHR(10)
xEmail = xEmail & "Fone - " & Request.Form("ddd") & Request.Form("fone") & CHR(13) & CHR(10)
xEmail = xEmail & "Info - " & Request.Form("info") & CHR(13) & CHR(10)
xEmail = xEmail & "Apto standard - " & Request.Form("standard") & CHR(13) & CHR(10)
xEmail = xEmail & "Apto superior - " & Request.Form("superior") & CHR(13) & CHR(10)
xEmail = xEmail & "Apto master - " & Request.Form("master") & CHR(13) & CHR(10)
xEmail = xEmail & "Adultos - " & Request.Form("adultos") & CHR(13) & CHR(10)
xEmail = xEmail & "Crianças - " & Request.Form("criancas") & CHR(13) & CHR(10)
xEmail = xEmail & "Entrada - " & Request.Form("entrada") & CHR(13) & CHR(10)
xEmail = xEmail & "Saída - " & Request.Form("saida") & CHR(13) & CHR(10)
Email.Body = xEmail
Email.Send
Set Email=Nothing
Response.Redirect "pagina_de_agradecimento.htm"
%>
Option Explicit
Response.Expires = 0
Dim Email, xEmail
Set Email=Server.Createobject("CDONTS.NewMail")
Email.From=Request.Form("email")
Email.To="seu@email.com.br"
Email.Subject= "Contato - Site"
xEmail = chr(10) & "Nome - " & Request.Form("nome") & CHR(13) & CHR(10)
xEmail = xEmail & "Endereço - " & Request.Form("endereco") & CHR(13) & CHR(10)
xEmail = xEmail & "Cidade - " & Request.Form("cidade") & CHR(13) & CHR(10)
xEmail = xEmail & "Estado - " & Request.Form("estado") & CHR(13) & CHR(10)
xEmail = xEmail & "E-mail - " & Request.Form("email") & CHR(13) & CHR(10)
xEmail = xEmail & "Fone - " & Request.Form("ddd") & Request.Form("fone") & CHR(13) & CHR(10)
xEmail = xEmail & "Info - " & Request.Form("info") & CHR(13) & CHR(10)
xEmail = xEmail & "Apto standard - " & Request.Form("standard") & CHR(13) & CHR(10)
xEmail = xEmail & "Apto superior - " & Request.Form("superior") & CHR(13) & CHR(10)
xEmail = xEmail & "Apto master - " & Request.Form("master") & CHR(13) & CHR(10)
xEmail = xEmail & "Adultos - " & Request.Form("adultos") & CHR(13) & CHR(10)
xEmail = xEmail & "Crianças - " & Request.Form("criancas") & CHR(13) & CHR(10)
xEmail = xEmail & "Entrada - " & Request.Form("entrada") & CHR(13) & CHR(10)
xEmail = xEmail & "Saída - " & Request.Form("saida") & CHR(13) & CHR(10)
Email.Body = xEmail
Email.Send
Set Email=Nothing
Response.Redirect "pagina_de_agradecimento.htm"
%>
segunda-feira, 20 de setembro de 2010
VirtualBox e Ubuntu compartilhar pasta
Para compartilhar ou "montar" uma pasta compartilhada no Ubuntu basta dar o seguinte comando (como root):
mount -t vboxsf NOME_DA_PASTA_COMPARTILHADA NOME_DA_PASTA_NO_UBUNTU
mount -t vboxsf NOME_DA_PASTA_COMPARTILHADA NOME_DA_PASTA_NO_UBUNTU
quinta-feira, 2 de setembro de 2010
Microsoft muda alinhamento da tabela de left para center
A Microsoft mudou sem avisar ninguém o alinhamento automático das td de left para center, no IE8, ou seja quem nunca precisou declarar align=left por ser padrão agora precisa declarar, um absurdo, pois todos os outros browsers continuam como padrão left.
Mais uma vez a Microsoft atrapalhando a vida dos programadores.
Mais uma vez a Microsoft atrapalhando a vida dos programadores.
quinta-feira, 24 de junho de 2010
MySQL Duplicidade - Achar e Apagar - Duplicated data - find and erase
Para achar quantos itens estão duplicados em uma coluna MySQL:
SELECT CAMPO_DESEJADO, COUNT( * )
FROM TABELA_DESEJADA
GROUP BY CAMPO_DESEJADO
HAVING COUNT( * ) >1
Para apagar os dados que estão em duplicidade, escolha um campo chave, no meu caso é o campo email:
ALTER IGNORE TABLE `tabela_desejada` ADD UNIQUE INDEX(email)
Lembre-se que depois desse comando o campo e-mail não vai mais permitir cadastros em duplicidade
Criando um rotina em PHP e deixando apenas um item - PHP routine and leave only one item
<?php
include_once "CONN.php";
$q="SELECT email, COUNT( * ) as counter FROM TABLE GROUP BY email HAVING COUNT( * ) >1";
$r=$pdo->prepare($q);
$r->execute();
$a=0;
while ($l=$r->fetch()) :
$conta=0;
$contador=0;
$contador=$l[1];
$conta=$contador-1;
$d=$pdo->prepare("delete from TABLE where email='$l[0]' limit $conta");
if ($d->execute()) $a++;
endwhile;
echo "apagados $a e-mails";
?>
quinta-feira, 29 de abril de 2010
SSH
Quando der um pau de louco no SSH e vc obter esta resposta:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
Faça o seguinte no shell de sua maquina:
ssh-keygen -R NUMERO_DO_SEU_IP
ssh-keygen -R site_q_quer_liberar.com.br
O comando acima zera as chaves SSH para o IP ou site informado.
segunda-feira, 5 de abril de 2010
sexta-feira, 26 de março de 2010
MySQL - Exportar apenas uma tabela
mysqldump --default-character-set=latin1 banco1 tabela1 > backup-tabela1.sql
quarta-feira, 24 de março de 2010
Javascript e PHP - Botão Bold, Italico,Underline, e-mail e Http
Sei o que muitos vão dizer, pq não usar o WYSYS? Resposta simples, pq ele altera todo o padrão CSS ja pré-definido da pagina.
Para tirar o efeito por exemplo <b>laweb</b> vc deve selecionar desde <b até </b> e depois clicar no botão "Tirar Efeito".
Para poder usar o mesmo script em várias paginas eu dividi ele da seguinte maneira:
Script para usar em sua pagina PHP
<?php
$Nome_do_Campo = "agenda";
include_once("biu.php");
?>
<textarea cols="80" rows="10" name="agenda" class="preto" ></textarea>
Arquivo biu.php
<script type="text/javascript">
<!--
function formatText (el,tag) {
var selectedText=document.selection?document.selection.createRange().text:el.value.substring(el.selectionStart,el.selectionEnd);// IE:Moz
if (tag !='e' || tag !='h') var newText='<'+tag+'>'+selectedText+'</'+tag+'>';
if (tag=='e') var newText='<a href="mailto:'+selectedText+'">'+selectedText+'</a>';
if (tag=='h') var newText='<a href="http://'+selectedText+'" target=_blank>'+selectedText+'</a>';
if(document.selection){//IE
document.selection.createRange().text=newText;
}
else{//Moz
el.value=el.value.substring(0,el.selectionStart)+newText+el.value.substring(el.selectionEnd,el.value.length);
}
}
function formatText_tira (el) {
var selectedText=document.selection?document.selection.createRange().text:el.value.substring(el.selectionStart,el.selectionEnd);// IE:Moz
var newText=selectedText;
var oldText=selectedText;
for (i=1;i<=5;i++) { if (i==1) tag='b'; if (i==2) tag='i'; if (i==3) tag='u'; if (i<=3) { var tagX='<'+tag+'>';
var tagY='</'+tag+'>';
newText = newText.replace(tagX,'');
newText = newText.replace(tagY,'');
}
if (i==4) {
var tagJ=newText.split('<',1); if (!tagJ[0]) { var tagX=newText.split('>',2);
var tagY='</a';
newText = newText.replace(newText,tagX[1]);
newText = newText.replace(tagY,'');
}
}
if (i==5) {
var tagJ=newText.split('<',1); if (!tagJ[0]) { var tagX=newText.split('>',2);
var tagY='</a';
newText = newText.replace(newText,tagX[0]);
newText = newText.replace(tagY,'');
}
}
}
if (newText=="undefined") nextText=oldText;
if(document.selection){//IE
document.selection.createRange().text=newText;
}
else{//Moz
el.value=el.value.substring(0,el.selectionStart)+newText+el.value.substring(el.selectionEnd,el.value.length);
}
}
//-->
</script>
<style>
.button {
font-family:Tahoma, Verdana, Arial;
color: #000066;
font-size:12px;
font-weight:bold;
text-align:center;
background: #f5f5f5;
}
.button_tirar {
font-family:Tahoma, Verdana, Arial;
color: #CC0000;
font-size:12px;
font-weight:bold;
text-align:center;
background: #f5f5f5;
}
</style>
<table cellspacing=0 cellpadding=0><tr>
<td><input type="button" value="N" onclick="formatText (<?=$Nome_do_Campo?>,'b');" class=button /></td>
<td><input type="button" value="I" onclick="formatText (<?=$Nome_do_Campo?>,'i');" class=button /></td>
<td><input type="button" value="S" onclick="formatText (<?=$Nome_do_Campo?>,'u');" class=button /></td>
<td><input type="button" value="e-mail" onclick="formatText (<?=$Nome_do_Campo?>,'e');" class=button /></td>
<td><input type="button" value="link" onclick="formatText (<?=$Nome_do_Campo?>,'h');" class=button /></td>
<td><input type="button" value="Tirar Efeito" onclick="formatText_tira (<?=$Nome_do_Campo?>);" class=button_tirar /></td>
</tr></table>
Para tirar o efeito por exemplo <b>laweb</b> vc deve selecionar desde <b até </b> e depois clicar no botão "Tirar Efeito".
Para poder usar o mesmo script em várias paginas eu dividi ele da seguinte maneira:
Script para usar em sua pagina PHP
<?php
$Nome_do_Campo = "agenda";
include_once("biu.php");
?>
<textarea cols="80" rows="10" name="agenda" class="preto" ></textarea>
Arquivo biu.php
<script type="text/javascript">
<!--
function formatText (el,tag) {
var selectedText=document.selection?document.selection.createRange().text:el.value.substring(el.selectionStart,el.selectionEnd);// IE:Moz
if (tag !='e' || tag !='h') var newText='<'+tag+'>'+selectedText+'</'+tag+'>';
if (tag=='e') var newText='<a href="mailto:'+selectedText+'">'+selectedText+'</a>';
if (tag=='h') var newText='<a href="http://'+selectedText+'" target=_blank>'+selectedText+'</a>';
if(document.selection){//IE
document.selection.createRange().text=newText;
}
else{//Moz
el.value=el.value.substring(0,el.selectionStart)+newText+el.value.substring(el.selectionEnd,el.value.length);
}
}
function formatText_tira (el) {
var selectedText=document.selection?document.selection.createRange().text:el.value.substring(el.selectionStart,el.selectionEnd);// IE:Moz
var newText=selectedText;
var oldText=selectedText;
for (i=1;i<=5;i++) { if (i==1) tag='b'; if (i==2) tag='i'; if (i==3) tag='u'; if (i<=3) { var tagX='<'+tag+'>';
var tagY='</'+tag+'>';
newText = newText.replace(tagX,'');
newText = newText.replace(tagY,'');
}
if (i==4) {
var tagJ=newText.split('<',1); if (!tagJ[0]) { var tagX=newText.split('>',2);
var tagY='</a';
newText = newText.replace(newText,tagX[1]);
newText = newText.replace(tagY,'');
}
}
if (i==5) {
var tagJ=newText.split('<',1); if (!tagJ[0]) { var tagX=newText.split('>',2);
var tagY='</a';
newText = newText.replace(newText,tagX[0]);
newText = newText.replace(tagY,'');
}
}
}
if (newText=="undefined") nextText=oldText;
if(document.selection){//IE
document.selection.createRange().text=newText;
}
else{//Moz
el.value=el.value.substring(0,el.selectionStart)+newText+el.value.substring(el.selectionEnd,el.value.length);
}
}
//-->
</script>
<style>
.button {
font-family:Tahoma, Verdana, Arial;
color: #000066;
font-size:12px;
font-weight:bold;
text-align:center;
background: #f5f5f5;
}
.button_tirar {
font-family:Tahoma, Verdana, Arial;
color: #CC0000;
font-size:12px;
font-weight:bold;
text-align:center;
background: #f5f5f5;
}
</style>
<table cellspacing=0 cellpadding=0><tr>
<td><input type="button" value="N" onclick="formatText (<?=$Nome_do_Campo?>,'b');" class=button /></td>
<td><input type="button" value="I" onclick="formatText (<?=$Nome_do_Campo?>,'i');" class=button /></td>
<td><input type="button" value="S" onclick="formatText (<?=$Nome_do_Campo?>,'u');" class=button /></td>
<td><input type="button" value="e-mail" onclick="formatText (<?=$Nome_do_Campo?>,'e');" class=button /></td>
<td><input type="button" value="link" onclick="formatText (<?=$Nome_do_Campo?>,'h');" class=button /></td>
<td><input type="button" value="Tirar Efeito" onclick="formatText_tira (<?=$Nome_do_Campo?>);" class=button_tirar /></td>
</tr></table>
segunda-feira, 25 de janeiro de 2010
sexta-feira, 22 de janeiro de 2010
Oracle - Ubuntu 8.04 - PHP - Instalação
artigo original em ingles por John Wendell
Além de instalar o oracle-xe-universal_10.2.0.1-1.0_i386.deb siga os passos abaixo para completar a instalação.
Instale alguns pacotes necessários:
sudo apt-get install php-pear php5-dev libaio1 build-essential
Download o Oracle Instant Client:
http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html
Pacotes necessários:
* Basic client
* SDK
* SQL Plus (Optional)
Unzip todos os downloads em /opt/instantclient
Execute os comandos abaixo:
cd /opt/instantclient
sudo ln -s libclntsh.so.11.1 libclntsh.so
sudo ln -s libocci.so.11.1 libocci.so
sudo sh -c echo "/opt/instantclient" > /etc/ld.so.conf.d/oracle.conf
sudo ldconfig
Instalando o modulo OCI8:
sudo pecl install oci8
Quando questionado por Oracle PATH, tecle nessa ordem:
all <enter>
instantclient,/opt/instantclient <enter>
<enter>
Coloque a extensão no PHP.ini:
sudo sh -c echo "extension=oci8.so" > /etc/php5/conf.d/oracle.ini
Restarte seu apache:
sudo /etc/init.d/apache2 restart
Cheque com phpinfo() se o modulo OCI8 esta lá.
sexta-feira, 15 de janeiro de 2010
MySQL - Pesquisa automática por data - de 3 meses atrás até 1 dia atrás
OBS: Esta pesquisa esta limitada a 5 resultados (limit 5) e esta setada para trazer os resultados aleatóreamente.
select SEUS_CAMPOS from SUA_TABELA where (campo_data<SUBDATE(Now(), INTERVAL 1 DAY) and campo_data>SUBDATE(Now(), INTERVAL 91 DAY)) ORDER BY RAND() limit 5
Assinar:
Postagens (Atom)
Linux bash file returns unexpected token `$'do\r''
open file in vi edit with vi filename.sh command; type in vi :set ff=unix command; save file with :wq It will save the file with unix...
-
Adicionar ♦ 10 dias a partir de hoje echo date('d/m/Y', strtotime("+10 days")); ♦ 10 dias a partir de uma data echo ...
-
Para dividir um valor em X vezes nem sempre dá um numero inteiro, sendo assim criei uma fórmula para calcular o valor e cobrar a diferença (...