Ted k’ É assim que tem que ser! Programando em ASP, ASP.NET, PHP, CSS, dentre outras…


23
Dec/08
2


Cadastrar, Listar, Editar e Excluir dados de um XML com ASP - Parte 03

Criem um arquivo chamado Editar.asp e nele serão lidas todas as tags que contém no arquivoBanco.xml , mas com a querystring passada pelo arquivo Ler.asp que criamos no artigo anterior. Vamos só alterar uma única tag, um único nó do XML. Lembrando que usei uma tag "nome": mas vocês poderiam criar uma tag "id" e colocar números seqüenciais ou randômicos, a escolha fica a critério.

Vamos primeiro listar todos os registros, criando os objetos que já utilizamos nos primeiros artigos, nada a mais.

<%@ Language="VBScript" %>
<%
Dim Banco : Banco = Server.MapPath("Banco.xml")
Set XMLDOC = Server.CreateObject("Microsoft.XMLDOM")
Set objLER = Server.CreateObject("Microsoft.XMLDOM")
XMLDOC.Load(Banco)
Set objLER = XMLDOC.getElementsByTagName("*")
%>

Logo abaixo desse script vamos criar o formulário com um "for" fazendo a varredura nas tags para pegar só o valor de tag citado na querystring passada:

<html>
<body>
<a href="Cadastro.asp">CADASTRAR</a> - <a href="Listar.asp">LISTAR</a>
<br><br>
<form action="Editar.asp?nome=<%=Request.QueryString("nome")%>" method="post">
            <input type="hidden" name="CampoUpdate" value="<%=Request.QueryString("nome")%>">
            <%
            For i = 0 To (objLER.length - 1)
            If objLER.Item(i).Text = ""&Request.QueryString("nome")&"" Then
            %>
            <b>Nome: </b><input type="text" name="Nome" value="<% Response.Write(objLER.Item(i).Text) %>"><br>
            <b>E-Mail: </b><input type="text" name="EMail" value="<% Response.Write(objLER.Item(i+1).Text) %>"><br>
            <b>Telefone: </b><input type="text" name="Telefone" value="<% Response.Write(objLER.Item(i+2).Text) %>"><br>
            <%
            End If
            Next
            %>
<input type="submit" value="Editar" name="btEdt">
</form>
</body>
</html>

Reparem a linha onde temos If objLER.Item(i).Text = ""&Request.QueryString("nome")&"" Then, é ela que está "selecionando" a tag que quero mostrar.

E por fim a edição:

<%
If Request.Form("btEdt") = "Editar" Then
            Dim Nome, EMail, Telefone, CampoUpdate, i
            Nome             = Request.Form("Nome")
            EMail              = Request.Form("EMail")
            Telefone          = Request.Form("Telefone")

            CampoUpdate = Request.Form("CampoUpdate")
            Set objLER_upDate = XMLDOC.getElementsByTagName("*")
                        For i = 0 To (objLER.length - 1)
                                   If objLER.Item(i).Text = ""&CampoUpdate&"" Then
                                               objLER.Item(i).Text    = Nome
                                               objLER.Item(i+1).Text            = EMail
                                               objLER.Item(i+2).Text            = Telefone
                                   End If
                        Next
                        XMLDOC.Save(Banco)
                        Response.Write("<script>alert('Editado com Sucesso!');location='Listar.asp'</script>")
            Set objLER_upDate = Nothing
End If
Set objLER = Nothing
Set XMLDOC = Nothing
%>

Coloquei a querystring passada em um campo hidden e joguei ele dentro de um "for", como fiz no formulário, em seguida troquei os valores pelas variáveis em seqüência, Nome, EMail e Telefone, salvei com o método XMLDOC.Save e passei um alert em JavaScript e pronto!!

Façam os testes juntando os três artigos.

Esse tipo de utilização do XML serve para coisas pequenas, por exemplo, um combo de país, cidades de um determinado estado, cores, dentre outros.

Até os próximos artigos!

5
Sep/08
4


Manipulando DIV com JavaScript

Página em JavaScript

 

funcao.js

var div = "manipulada";
// atribuir o nome da div que quer mostrar e ocultar

function AparecerDiv(){ // função aparecer
	document.getElementById(div).style.display = "block";
	// usamos o style.display para manupular o css da div e mostrar ela
}

function OcultarDiv(){  // função ocultar
	document.getElementById(div).style.display = "none";
	// usamos o style.display para manupular o css da div e ocultar ela
}

Teste.html

<html>
<head>
<script language="javascript" src="funcao.js"></script>
</head>
<body>
<span onClick="AparecerDiv();" style="cursor: pointer;"><u>Aparecer Div</u></span>
<br><br>
	<div id="manipulada" style="display: none;">
		Conteúdo da div escondida&nbsp;&nbsp;&nbsp;<span onClick="OcultarDiv();" style="cursor: pointer;">[<u>x</u>]</span>
	</div>
</body>
</html>

Um código simples para quem precisa manipular uma div com facilidade:

13
Aug/08
24


Cadastrando, Listando e Deletando com AJAX / ASP

Código bem simples e útil para a galera que gosta de usar AJAX e não tem muita referência!
Página para carregar o AJAX, funcionalidades:

 

 

ajaxCarregar.js

function GetXMLHttp() {
if(navigator.appName == "Microsoft Internet Explorer") {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else {
xmlHttp = new XMLHttpRequest();
}
return xmlHttp;
}

var Enviar = GetXMLHttp();

// Início - Cadastro
function CadastrarDados() {
var Nome = document.getElementById("Nome");
var EMail = document.getElementById("EMail");

var URL = "Cadastro.asp?Cadastrar=Ok&Nome="+Nome.value+"&EMail="+EMail.value+"";
Enviar.open("GET", URL, true);
Enviar.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
document.getElementById("Resposta").innerHTML = "Cadastrado com Sucesso!!!";

Nome.value = "";
EMail.value = "";

Enviar.send(null);
Enviar.onload = lerTexto;
}
// Final - Cadastro

// Início - Deletar
function apagar(id, rowIndex) {
if (confirm('Tem certeza que deseja excluir este registro?')) {
document.getElementById("tabela").deleteRow(rowIndex);

Enviar.open("POST",'Cadastro.asp?Deletar=Ok&id='+ id, false);
Enviar.send(null);
}
}
// Final - Deletar

// Início - Carregar Página
function lerTexto() {
var URLler = "Ler.asp";
Enviar.onreadystatechange = stateChanged;
Enviar.open("GET", URLler, true);
Enviar.send(null);
}

function stateChanged() {
if (Enviar.readyState==4) {
document.getElementById("ler_Dados").innerHTML = Enviar.responseText;
}
}

window.onload = lerTexto;
// Final - Carregar Página

 

 

Ler.asp

<%@ Language="JavaScript" %>
<%
var Conexao;
var Conexao = Server.CreateObject("Adodb.Connection");
Conexao.ConnectionString = "Driver=MySQL ODBC 3.51 Driver; DataBase=banco; Server=localhost; Uid=root; PassWord=root;";
Conexao.Open;
%>
<table width="407" border="1" cellspacing="0" cellpadding="0" id="tabela">
<tr>
<td width="164"><strong>NOME</strong></td>
<td width="159"><strong>EMAIL</strong></td>
<td width="76"><strong>Acionar</strong></td>
</tr>
<%
var rs = Conexao.Execute("Select * From Teste");
if (rs == null) {
Response.Write("NADA");
}
else {
while (!rs.EOF) {
%>
<tr>
<td><%=rs("Nome")%></td>
<td><%=rs("EMail")%></td>
<td><a href="#" onClick="apagar('<%=rs("Codigo")%>', this.parentNode.parentNode.rowIndex);">deletar</a></td>
</tr>
<%
rs.MoveNext();
}
}
%>
</table>

 

 

Cadastro.asp

<%@ Language="JavaScript" %>
<%
var Conexao;
var Conexao = Server.CreateObject("Adodb.Connection");
Conexao.ConnectionString = "Driver=MySQL ODBC 3.51 Driver; DataBase=banco; Server=localhost; Uid=root; PassWord=root;";
Conexao.Open;
%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastrar</title>
<script language="javascript" src="ajaxCarregar.js"></script>
</head>
<body>
<div id="Resposta"></div><br>
<form id="Form">
Nome: <input type="text" id="Nome" name="Nome" value=""><br>
E-Mail: <input type="text" id="EMail" name="EMail" value=""><br>
<input type="button" id="Cadastrar" value="Cadastrar" name="Cadastrar" onClick="CadastrarDados();">
</form><br>
<br>
<br>
<div id="ler_Dados"></div>
</body>
</html>
<%
if (Request.QueryString("Cadastrar") == "Ok") {
Conexao.Execute("Insert Into Teste (Nome, EMail) Values ('"+Request.QueryString("Nome")+"', '"+Request.QueryString("EMail")+"')");
Response.Write("");
}

if (Request.QueryString("Deletar") == "Ok") {
Conexao.Execute("Delete From Teste Where Codigo = '"+Request.QueryString("id")+"'");
Response.Write("");
}
%>
29
Jul/08
2


Randomize com JavaScript/DOM

Código simples e comentando!!!

function Randomize() {
var randNum = Math.floor((999 - 111 + 1) * Math.random() + 111);
// para aumentar a quantidade de números é só aumentar as casas decimais das centenas
document.getElementById("resultado").innerHTML = randNum;
// imprime o resultado na div "resultado"
}
<div id="clicar" style="cursor: pointer;" onClick="Randomize();">Clique aqui para gerar os numerais!</div><br>
<div id="resultado"></div>
16
Jul/08
3


Verificar a existência da tag XML com ASP

Sempre vejo esse tipo de pergunta nos fóruns, para que serve o tal do ".nodeName"????
Tenho aqui uma bela funcionalidade para ele, e bem útil.

Nesse script abaixo, verifico se existe a tag "NOME_TAG" dentro do arquivo teste.xml com auxilio do .nodeName, vejam o script e reparem no simples, que é bonito!!

<%
Set obj_XML = Server.CreateObject("Microsoft.XMLDOM")
Set objLista = Server.CreateObject("Microsoft.XMLDOM")
obj_XML.async = False
obj_XML.Load (Server.MapPath("teste.xml"))

Set objLista = obj_XML.getElementsByTagName("*")

For i = 0 to (objLista.length-1)

    If objLista.item(i).nodeName = "NOME_TAG" Then
      response.Write(objLista.item(i).text)
    End If

Next
%>

Reparem que nessa linha:

Set objLista = obj_XML.getElementsByTagName("*")

usei o "*" para chamar todas as tags para depois com um IF, verificar se a tag "NOME_TAG" realmente existe.

Bem simples e funcional.


Página 1 de 212»



Portfólio Ted k'

Atualize seu Navegador