Jump to content


amigoni's Content

There have been 2 items by amigoni (Search limited from 27/11/2019)


Ordernar por                Order  

#1004705 Busca Com Auto-suggest

Posted by amigoni on 19/10/2010, 15:09 in Avaliação de Sistemas

OFF ?




O negócio ficou meio parada uns tempos q até esqueci do post.

Eu corrigi o endereço, agora eu tenho um domínio próprio. Desculpe pelo inconveniente.




#1003094 Preencher Campos Com Ajax E Php

Posted by amigoni on 31/08/2010, 10:03 in Ajax

E ai cara já conseguiu resolver?



Boa Tarde.

Galera estou precisando da ajuda de vocês, no codigo a seguir fiz um formulario que é preenchido com pelo ajax com os dados do banco de dados, o usuario informa o cnpj do cliente e se este estiver cadastrado ele preenche o form, até da funcionando, ele preenche direitinho, porem não consigo tratar quando tem erro por exemplo: " Se o cnpj informado for incorreto", neste caso era para aparecer apenas a mensagem de erro na div de aviso, porem ele preenche os campos com undefined, vou postar o codigo e se alguem puder me ajudar.

CADCLIENTE.HTML

<?php
include("verifica.php");
include("menu.php");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR...nsitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="inc/funcoes.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Sistema de Pedidos Ciclotron - InRad</title>
<link href="css/main.css" rel="stylesheet" type="text/css" media="all" />
</head>
<body>

<table class="table" width="auto">
<form name="cad_usuario" method="POST" action="grava_cliente.php">
<tr>
<td width="123">CNPJ</td>
<td width="166"><input type="text" id="cnpj" onblur="ValidarDados('cnpj', document.getElementById('cnpj').value);" maxlength="14"/></td>
<td width="117"><input type="button" id="button" value="Verificar" onclick="ValidarDados('cnpj', document.getElementById('cnpj').value);" /></td>
<td width="249">
<div id="aviso" class="aviso"></div>
</td>
</tr>
<tr>
<td>Raz&atilde;o Social</td>
<td colspan="3"><input name="razao_social" type="text" id="razao_social" size="73"/></td>
</tr>
<tr>
<td>Nome Fantasia</td>
<td colspan="3"><input name="fantasia" type="text" id="fantasia" size="73" /></td>
</tr>
<tr>
<td>Endere&ccedil;o</td>
<td><input type="text" name="endereco" id="endereco" /></td>
<td>Complemento</td>
<td><input type="text" name="compl" id="compl" /></td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="email" id="email" onblur="ValidarDados('email', document.getElementById('email').value);"/></td>
<td>Telefone</td>
<td><input type="text" name="telefone" id="telefone" /></td>
</tr>
<tr>
<td>Cep</td>
<td><input type="text" name="cep" id="cep" /></td>
<td>Cidade</td>
<td><input type="text" name="cidade" id="cidade" /></td>
</tr>
<tr>
<td>Estado</td>
<td><select name="estado" size="1" id="estado">
<option value="AC">AC</option>
<option value="AL">AL</option>
<option value="AM">AM</option>
<option value="AP">AP</option>
<option value="BA">BA</option>
<option value="CE">CE</option>
<option value="DF">DF</option>
<option value="ES">ES</option>
<option value="GO">GO</option>
<option value="MA">MA</option>
<option value="MG">MG</option>
<option value="MS">MS</option>
<option value="MT">MT</option>
<option value="PA">PA</option>
<option value="PB">PB</option>
<option value="PE">PE</option>
<option value="PI">PI</option>
<option value="PR">PR</option>
<option value="RJ">RJ</option>
<option value="RN">RN</option>
<option value="RO">RO</option>
<option value="RR">RR</option>
<option value="RS">RS</option>
<option value="SC">SC</option>
<option value="SE">SE</option>
<option selected value="SP">SP</option>
<option value="TO">TO</option>
</select></td>
<td>Pais</td>
<td><input name="pais" type="text" id="pais" value="Brasil" /></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="button2" id="button2" value="Salvar" class="button"/></td>
<td><input type="reset" name="button3" id="button3" value="Limpar" class="button" /></td>
<td>&nbsp;</td>
</tr>
</form>
</table>

</body>
</html>

FUNCOES.JS

var req;
// Verificando o Browser se é diferente de IE

if(window.XMLHttpRequest) {
var req = new XMLHttpRequest();
}
// Se for Internet Explorer
else if(window.ActiveXObject) {
var req = new ActiveXObject("Microsoft.XMLHTTP");
}

// comando caso fosse usar metodo get var url = "validacao.php?campo="+campo+"&valor="+valor;
function ValidarDados(campo, valor){

var resp = "";
var url = "FuncoesDeValidacao.php";
req.open("POST", url, true);
req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
req.send("campo="+campo+"&valor="+valor);

if(campo == "cnpj"){
req.onreadystatechange = ValidaCnpj;
}
if(campo == "email"){
req.onreadystatechange = ValidaEmail;
}

function ValidaCnpj(){
if (req.readyState<4){
document.getElementById('aviso').innerHTML = 'Carregando.';
}

if(req.readyState == 4 && req.status == 200){

var resp = req.responseText.split("|");

/* compara a diretiva 0 do array para verificar se contem a palavra erro, porem não executa esta condição nunca, e não sei porque */
if(resp[0] == "Erro"){

document.getElementById('aviso').innerHTML = resp[0];
return;
}

else{

document.getElementById('aviso').innerHTML = "";
document.getElementById('razao_social').value = resp[0];
document.getElementById('fantasia') .value = resp[1];
document.getElementById('endereco') .value = resp[3];
document.getElementById('compl' ) .value = resp[8];
document.getElementById('email' ) .value = resp[2];
document.getElementById('cep' ) .value = resp[7];
document.getElementById('cidade' ) .value = resp[4];
document.getElementById('estado' ) .value = resp[5];
document.getElementById('pais' ) .value = resp[6];
document.getElementById('telefone') .value = resp[10];

}
}
}


function ValidaEmail(){

if (req.readyState<4){
document.getElementById('aviso').innerHTML = 'Validando email.';
}

if(req.readyState == 4 && req.status == 200){
var resp = req.responseText.split("|");
document.getElementById('aviso').innerHTML = resp[1];
}
}
}

FUNCOESDEVALIDACAO.PHP

<?php
session_start();
ob_start();
header("Content-Type: text/html; charset=ISO-8859-1",true);
include("verifica.php");
include("inc/connect.php");
extract($_POST);

if($campo == "cnpj"){
$j = 5;
$k = 6;
$soma1 = "";
$soma2 = "";

if(empty($valor)){
$erro = "Erro";
$erro .= "|"."O Campo ".$campo." é obrigatorio";
echo"$Erro";
return;

}

if(!is_numeric($valor)){
$erro = "Erro";
$erro .= "|"."Digite apenas numeros";
echo"$erro";
return;

}

$valor = preg_replace ("@[./-]@", "", $valor);
if (strlen ($valor) <> 14){
$erro = "Erro";
/* todos os erros tem como primeiro elemento a palavra erro para poder ser reconhecido no js atraves da resposta resp[0].*/
$erro .= "|"."O CNPJ tem que ter 14 digitos";
echo"$erro";
return;


}

if(!empty($valor)){

for ($i = 0; $i < 13; $i++){
$j = $j == 1 ? 9 : $j;
$k = $k == 1 ? 9 : $k;
$soma2 += ($valor{$i} * $k);

if ($i < 12){
$soma1 += ($valor{$i} * $j);
}
$k--;
$j--;
}

$digito1 = $soma1 % 11 < 2 ? 0 : 11 - $soma1 % 11;
$digito2 = $soma2 % 11 < 2 ? 0 : 11 - $soma2 % 11;

if($valor{12} != $digito1 and $valor{13} != $digito2){
$erro = "Erro";
$erro .= "|"."O CNPJ ".$valor." é invalido";
echo"$erro";
return;

}

if($valor{12} == $digito1 and $valor{13} == $digito2){
$consulta = "SELECT * FROM CLIENTE WHERE CNPJ_CLIENTE = '$valor'";
$sql = mssql_query($consulta);
if(mssql_num_rows($sql)){
$linha = mssql_fetch_array($sql);

$array = $linha ['RAZAO_SOCIAL_CLIENTE' ];
$array .= "|" . $linha ['NOME_FANTASIA_CLIENTE'];
$array .= "|" . $linha ['EMAIL_CLIENTE' ];
$array .= "|" . $linha ['ENDERECO_CLIENTE' ];
$array .= "|" . $linha ['CIDADE_CLIENTE' ];
$array .= "|" . $linha ['ESTADO_CLIENTE' ];
$array .= "|" . $linha ['PAIS_CLIENTE' ];
$array .= "|" . $linha ['CEP_CLIENTE' ];
$array .= "|" . $linha ['COMPL_END_CLIENTE' ];
$array .= "|" . $linha ['CNPJ_CLIENTE' ];
$array .= "|" . $linha ['TELEFONE_CLIENTE' ];

echo"$array";

}
else{
$erro = "Erro";
$erro .= "|"."O ".$campo." é valido";
echo"$erro";
}
}

}
}


if($campo == "email"){

if (eregi("^[-_a-z0-9]+(\.[-_a-z0-9]+)*\@([-a-z0-9]+\.)*([a-z]{2,4})$", $valor)){
$dns_mail = explode("@",$valor);
if(checkdnsrr($dns_mail[1])){
$erro = "Erro";
$erro .= "|"." EMail Ok";
echo"$erro";
}
else{
$erro = "Erro";
$erro .= "|"."O dominio do email ".$valor." parece ser invalido";
echo"$erro";

}
}
else{
$erro = "Erro";
$erro .= "|"."O endereço de email ".$valor." é parece ser invalido";
echo"$erro";
}
}



?>





IPB Skin By Virteq