segue ai um um simples tutorial q eu acabei de fazer para cadastrar cliente, usando o xmlHttpRequest...
index.php
<html> <head> <title> Cadastro </title> <script type="text/javascript" src="js.js"></script> </head> <body> <center><div id="resposta"></div></center> <table border="1" cellpadding="2" cellspacing="2" align="center" id="123"> <form name="frmCadastro" method="post"> <tr> <td align="right">Nome: </td><td> <input type="text" name="txtNome" size="30"></td> </tr> <tr> <td align="right">Telefone: </td><td> <input type="text" name="txtTelefone" size="30"></td> </tr> <tr> <td align="right">E-mail: </td><td> <input type="text" name="txtEmail" size="30"></td> </tr> <tr> <td align="right">Site: </td><td> <input type="text" name="txtSite" size="30"></td> </tr> <tr> <td colspan="2" align="right"> <input type="button" onclick="__cadastraCliente(this.form);" value="Cadastrar"> </td> </tr> </form> </table> </body> </body>
------------------------------------
cadastro.php
<?php # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # // Cabeçalho -> caracter usado é utf-8 # # # # // Cabeçalho -> Não armazenar em cache a página # # # # // Uso a função utf8_encode para transformar os caracteres # # // especiais (acentos, ç, etc) em caracteres utf-8. # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # // Includes include_once "config.php"; header("Content-type: text/html; charset=utf-8"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); // Define variáveis $msg = null; $varNome = isset($_POST["txtNome"]) ? $_POST["txtNome"] : ""; $varTelefone = isset($_POST["txtTelefone"]) ? $_POST["txtTelefone"] : ""; $varEmail = isset($_POST["txtEmail"]) ? $_POST["txtEmail"] : ""; $varSite = isset($_POST["txtSite"]) ? $_POST["txtSite"] : ""; if (trim($varNome == "")) { $msg = "-> O campo \"Nome\" deve ser preechido ! <br>"; } else if (trim($varTelefone == "")) { $msg = "-> O campo \"Telefone\" deve ser preechido ! <br>"; } else if (trim($varEmail == "")) { $msg = "-> O campo \"E-mail\" deve ser preechido ! <br>"; } else if (trim($varSite == "")) { $msg = "-> O campo \"Site\" deve ser preechido ! <br>"; } else { // Cadastra cliente $query = ("INSERT INTO cliente(nome,telefone,email,site) VALUES('$varNome','$varTelefone','$varEmail','$varSite')"); $result = mysql_query($query); if($result) $msg = 1; else $msg = "Erro ao cadastrar cliente !<br>".mysql_error(); } if(isset($msg)) { echo utf8_encode($msg); } ?>
---------------------------------------------------
js.js
// Define variável global var xmlhttp; function __cadastraCliente(varForm) { // Define variáveis var varNome; var varTelefone; var varEmail; var varSite; // Atribui valores as variáveis varNome = escape(varForm.txtNome.value); varTelefone = escape(varForm.txtTelefone.value); varEmail = escape(varForm.txtEmail.value); varSite = escape(varForm.txtSite.value); // Instancia o objeto, dependendo do navagador if (window.XMLHttpRequest) { xmlhttp = new XMLHttpRequest(); } else if (window.ActiveXObject) { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } else { alert("Seu navegador não suporta XMLHttpRequest."); return; } xmlhttp.open("POST", "cadastro.php", true); xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); xmlhttp.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate"); xmlhttp.setRequestHeader("Cache-Control", "post-check=0, pre-check=0"); xmlhttp.setRequestHeader("Pragma", "no-cache"); xmlhttp.onreadystatechange = processReqChange; xmlhttp.send("txtNome=" + varNome + "&txtTelefone=" + varTelefone + "&txtEmail=" + varEmail + "&txtSite=" + varSite); } function processReqChange() { document.getElementById("resposta").innerHTML = "Processando dados..."; if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { // xmlhttp.responseText, recebe o valor da variavel $msg de cadastro.php if(xmlhttp.responseText == 1) { document.getElementById("resposta").innerHTML = "DADOS CADASTRADOS COM SUCESSO ! ! ! <br><br><br>"; window.location.href = "http://www.wmonline.com.br"; // Redireciona para uma pagina.... } else document.getElementById("resposta").innerHTML = xmlhttp.responseText; } else { alert("Problemas ao carregar o arquivo."); } } }
-----------------------------------------------------
config.php
<? $dbHost = "localhost"; $dbUser = "root"; $dbPass = ""; $dbName = "empresa"; $dbConexao = mysql_connect($dbHost,$dbUser,$dbPass); if(!$dbConexao) { echo utf8_encode("<span style=\"font-family: verdana; font-size: 12px; color: #FF0000;\"><b>Erro</b> na conexão com o banco...</span><br>").mysql_error(); exit; } $dbSelect = mysql_select_db($dbName); if(!$dbSelect) { echo utf8_encode("<span style=\"font-family: verdana; font-size: 12px; color: #FF0000;\"><b>Erro</b> na seleção do banco...</span><br>").mysql_error(); exit; } ?>
----------------------------------------------------
sql.sql
CREATE DATABASE empresa; CREATE TABLE `cliente` ( `id` int(5) NOT NULL auto_increment, `nome` varchar(100) NOT NULL, `telefone` varchar(50) NOT NULL, `email` varchar(50) NOT NULL, `site` varchar(50) NOT NULL, PRIMARY KEY (`id`) );
vlw galera, espero ter contribuido para nossa evolução.... até +
se alguem quizer alterar o tuto, manda v ai, e poste para nós.. hehehe
para fazer esse tuto, eu me inspirei nese link ai -> http://www.vs-soluti...wtopic.php?t=18