sacar valor al hacer click
Publicado por zafra_arde (7 intervenciones) el 09/06/2010 17:57:00
hola os digo mi problema, tengo un campo con muchas calles de mi pueblo, el campo tienes un autocomplete k funciona muy bien, pero ahora nose k hacer cuando se hace onclick en un nombre de una calle, me gustaria k me ayudaseis a sacar una variable en php para yo despues podersela mandar a la API de google mas para sacar la geolocalizacion, pero en eso no tengo probelmas en a la hora de sacar a variable en php k no se como hacerlo
os adjunto el codigo, mil gracias por perder vuestro tiempo:
--------------------------index.html----------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Autocomplete </TITLE>
</HEAD>
<script type="text/javascript" src="jsfile.js"></script>
<script type="text/javascript" >
function setValue(str)
{
document.getElementById("name").value=str;
}
</script>
<BODY>
<div>
<div>
<div>
Direccion:
<div>
<input style="width: 200px;" id="name" onkeyup="getInfo(this.value,200)" type="text" />
<div onclick="" id="autoSuggestionsList" style="position: relative; top: -4px; width='100px;'" >
</div>
<div>
</div>
</div>
</BODY>
</HTML>
----------------------------info.php-------------------------
<?php
if(isset($_GET["str"])) {
$queryString= $_GET["str"];
$length= $_GET["length"];
$con = mysql_connect("localhost","root","root"); //open connection
if (!$con) {
die('Could not connect to mysql ' . mysql_error()); // error message
}
else {
mysql_select_db("zafra",$con); // select database
$query="select nombre_calle from calles where nombre_calle like '%".$queryString."%' limit 10";
$result= mysql_query($query); // fire query
echo "<table bgcolor='blue' width='".$length.";'>";
while($row = mysql_fetch_row($result)) // fetch result
{
echo "<tr width='".$length.";'>";
echo "<td style='color: #000000; text-decoration: none; cursor:pointer;' onclick='setValue(this.value)' onkeydown='setValue(this.innerText)' width='".$length.";'>";
echo $row[0]; // display result
echo "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con); // close connection
}
}
else {
echo "";
}
?>
--------------------------jsfile.js---------------------------
var httpobject;
function getInfo(str,length)
{
if(str.length != 0)
{
httpobject=GetHttpObject();
if (httpobject !=null)
{
var url="info.php";
url=url+"?str="+str;
url=url+"&length="+length;
httpobject.onreadystatechange=stateChanged;
httpobject.open("GET",url,true);
httpobject.send(null);
}
}
else
{
document.getElementById("autoSuggestionsList").innerHTML="";
}
}
function stateChanged()
{
if (httpobject.readyState==4)
{
document.getElementById("autoSuggestionsList").innerHTML=httpobject.responseText;
}
}
function GetHttpObject()
{
if (window.ActiveXObject)
return new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest)
return new XMLHttpRequest();
else
{
alert("Your browser does not support AJAX.");
return null;
}
}
-----------------------------sql--------------------------------------------------------------
-- phpMyAdmin SQL Dump
-- version 3.2.0.1
-- http://www.phpmyadmin.net
--
-- Servidor: localhost
-- Tiempo de generación: 09-06-2010 a las 17:42:54
-- Versión del servidor: 5.1.37
-- Versión de PHP: 5.3.0
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- Base de datos: `zafra`
--
CREATE DATABASE `zafra` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `zafra`;
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `calles`
--
CREATE TABLE IF NOT EXISTS `calles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre_calle` varchar(80) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
--
-- Volcar la base de datos para la tabla `calles`
--
INSERT INTO `calles` (`id`, `nombre_calle`) VALUES
(1, 'Sevilla, calle'),
(2, 'De la estacion, carretera');
os adjunto el codigo, mil gracias por perder vuestro tiempo:
--------------------------index.html----------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Autocomplete </TITLE>
</HEAD>
<script type="text/javascript" src="jsfile.js"></script>
<script type="text/javascript" >
function setValue(str)
{
document.getElementById("name").value=str;
}
</script>
<BODY>
<div>
<div>
<div>
Direccion:
<div>
<input style="width: 200px;" id="name" onkeyup="getInfo(this.value,200)" type="text" />
<div onclick="" id="autoSuggestionsList" style="position: relative; top: -4px; width='100px;'" >
</div>
<div>
</div>
</div>
</BODY>
</HTML>
----------------------------info.php-------------------------
<?php
if(isset($_GET["str"])) {
$queryString= $_GET["str"];
$length= $_GET["length"];
$con = mysql_connect("localhost","root","root"); //open connection
if (!$con) {
die('Could not connect to mysql ' . mysql_error()); // error message
}
else {
mysql_select_db("zafra",$con); // select database
$query="select nombre_calle from calles where nombre_calle like '%".$queryString."%' limit 10";
$result= mysql_query($query); // fire query
echo "<table bgcolor='blue' width='".$length.";'>";
while($row = mysql_fetch_row($result)) // fetch result
{
echo "<tr width='".$length.";'>";
echo "<td style='color: #000000; text-decoration: none; cursor:pointer;' onclick='setValue(this.value)' onkeydown='setValue(this.innerText)' width='".$length.";'>";
echo $row[0]; // display result
echo "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con); // close connection
}
}
else {
echo "";
}
?>
--------------------------jsfile.js---------------------------
var httpobject;
function getInfo(str,length)
{
if(str.length != 0)
{
httpobject=GetHttpObject();
if (httpobject !=null)
{
var url="info.php";
url=url+"?str="+str;
url=url+"&length="+length;
httpobject.onreadystatechange=stateChanged;
httpobject.open("GET",url,true);
httpobject.send(null);
}
}
else
{
document.getElementById("autoSuggestionsList").innerHTML="";
}
}
function stateChanged()
{
if (httpobject.readyState==4)
{
document.getElementById("autoSuggestionsList").innerHTML=httpobject.responseText;
}
}
function GetHttpObject()
{
if (window.ActiveXObject)
return new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest)
return new XMLHttpRequest();
else
{
alert("Your browser does not support AJAX.");
return null;
}
}
-----------------------------sql--------------------------------------------------------------
-- phpMyAdmin SQL Dump
-- version 3.2.0.1
-- http://www.phpmyadmin.net
--
-- Servidor: localhost
-- Tiempo de generación: 09-06-2010 a las 17:42:54
-- Versión del servidor: 5.1.37
-- Versión de PHP: 5.3.0
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- Base de datos: `zafra`
--
CREATE DATABASE `zafra` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `zafra`;
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `calles`
--
CREATE TABLE IF NOT EXISTS `calles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre_calle` varchar(80) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
--
-- Volcar la base de datos para la tabla `calles`
--
INSERT INTO `calles` (`id`, `nombre_calle`) VALUES
(1, 'Sevilla, calle'),
(2, 'De la estacion, carretera');
Valora esta pregunta
0