Destaque

Trabalhando com transações com PHP e MySQL Transações é um recurso muito interessante do MySQL, pois permite que você execute uma sequência de comandos SQL de uma só vez, permitindo que você execute determinadas inserções, somente se todas as inserções forem realizadas com sucesso. Isto assegura que você mantenha seu banco...

Read more

PHP: Detectando Browsers diferentes Segue uma função simples abaixo para detectar o navegador que o usuário está usando, inclusive para o Internet Explorer 10

Read more

Windows Seven: Ativando a conta de Administrador Por padrão, a conta de Administrador no Windows Seven vem desabilitada, portanto, mesmo se você possui permissões de Administrador no sistema, sempre que for necessário alguma tarefa específica, como por exemplo, instalação de softwares ou drivers, o Controle de Conta de Usuário (UAC) será acionado,...

Read more

PHP: Função só número com Expressão Regular Existe uma função no PHP que permite filtrar valores de uma variável, deixando passar somente os valores que desejamos. Veja no exemplo abaixo function soNumero($str) { return preg_replace("/[^0-9]/", "", $str); } $filtro = soNumero("teste321"); echo $filtro; // 321 fonte:...

Read more

Delphi: Variáveis do tipo Variants Esta flexível e poderosa Estrutura de Dados, que popularizou-se bastante através da linguagem Clipper, carrega consigo recursos extremamente interessantes para a manipulação de tipos e trabalhos com arrays. Mas o melhor de tudo, é que, estes recursos estão disponíveis a nós, “Programadores...

Read more

Ajax: Autosuggest com PHP

0

Postado em : 19-07-2009 | By : Paulo H Oliveira | In : Ajax, PHP

Auto-sugestão de busca (sem banco de dados) utilizando AJAX. O exemplo pode ser utilizado com banco de dados facilmente, bastando vincular a linha de chamada com o indice enviado pelo GET do AJAX.

Arquivo ajax.php:

<html>
<head>
<script>
var xmlHttp
function showHint(str)
{
if (str.length==0)
{
document.getElementById("txtHint").innerHTML="";
return;
}
 
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
 
var url="result. php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
 
function stateChanged()
{
if (xmlHttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
}
 
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
 
// Internet Explorer
 
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
} </script>
 
</head>
<body>
 
<form>
First Name:
<input type="text" id="txt1" onkeyup="showHint(this.value)">
</form>
 
<p>Suggestions: <span id="txtHint"></span></p> 
 
</body>
</html>

Arquivo result.php:

<?php
 
// Fill up array with names
$a[]="Anna";
$a[]="Brittany";
$a[]="Cinderella";
$a[]="Diana";
$a[]="Eva";
$a[]="Fiona";
$a[]="Gunda";
$a[]="Hege";
$a[]="Inga";
$a[]="Johanna";
$a[]="Kitty";
$a[]="Linda";
$a[]="Nina";
$a[]="Ophelia";
$a[]="Petunia";
$a[]="Amanda";
$a[]="Raquel";
$a[]="Cindy";
$a[]="Doris";
$a[]="Eve";
$a[]="Evita";
$a[]="Sunniva";
$a[]="Tove";
$a[]="Unni";
$a[]="Violet";
$a[]="Liza";
$a[]="Elizabeth";
$a[]="Ellen";
$a[]="Wenche";
$a[]="Vicky";//get the q parameter from URL
 
$q=$_GET["q"];//lookup all hints from array if length of q>0
 
if (strlen($q) > 0)
{
$hint="";
for($i=0; $i<count($a); $i++)
{
if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
{
if ($hint=="")
{
$hint=$a[$i];
}
else
{
$hint=$hint." , ".$a[$i];
}
}
}
}
 
// Set output to "no suggestion" if no hint were found
// or to the correct values
 
if ($hint == "")
{
$response="no suggestion";
}
else
{
$response=$hint;
}
 
//output the response
 
echo $response;
 
?>

Ajax: Filtrando combo cidades pelo estado

0

Postado em : 19-07-2009 | By : Paulo H Oliveira | In : ASP, Ajax
// Combo das cidades
<%
set rsCids = Server.CreateObject(“adodb.recordset”)
rsCids.open “SELECT CATCODIGO, CATDESCRICAO FROM CATEGORIAS WHERE CATTIPO=’C’ ORDER BY CATDESCRICAO”, conn
%>
<select name=”scidades” id=”scidades” onchange=”grupobairros();”>
<option value=”">Escolha a Cidade</option>
<% while not rsCids.Eof %>
<option value=”<%=rsCids(“catcodigo”)%>”><%=rsCids(“catdescricao”)%></option>
<%
rsCids.MoveNext
wend
rsCids.Close
set rsCids = nothing
%>
</select>
// div dos bairros
<div>
<span id=’divgrupobairros’>
<table>
<tr><td> –Selecione a cidade–</td></tr>
</table>
</span></div>
// Script do Ajax
<script>
function grupobairros()
{
var vbairros = createXMLHTTP();
vbairros.open(“post”, “objbairros.asp”, true);
vbairros.setRequestHeader(“Content-Type”, “application/x-www-form-urlencoded”);
vbairros.onreadystatechange=function(){
if (vbairros.readyState==4){
document.all.divgrupobairros.innerHTML = vbairros.responseText;}}
vbairros.send(“codcid=” + frmlocalizar.scidades.value);
}
</script>
// Arquivo objbairros.asp
<%
‘RESGATA O ID DA CIDADE SELECIONADA PARA FAZER A SELAÇÃO DOS BAIRROS.
codcid = request(“codcid”)
‘AQUI ESTÁ NOSSO SELECT.
set rsBairros = server.createobject(“adodb.recordset”)
rsBairros.open “SELECT catcodigo, catdescricao FROM categorias WHERE cattipo = ‘B’ AND catvinculo = “&codcid&” ORDER BY catdescricao ASC”, conn
%>
<!– AUI MONTAMOS NOSSA COMBO DE BAIRROS, CONFORME A CIDADE SELECIONADA –>
<table>
<% while not rsBairros.EOF %>
<tr><td> <input type=”checkbox” value=”chkbairros_<%=rsBairros(“catcodigo”)%>” /><%=rsBairros(“catdescricao”)%></td></tr>
<%
rsBairros.MoveNext
wend
rsBairros.close
set rsBairros = nothing
%>
</table>

Quando queremos mostrar somente as cidades de um estado sem dar “refresh” na tela toda devemos fazer um AJAX para rodar e carregar somente as cidades do estado selecionado, esta rotina está em ASP.

Read the rest of this entry »