Foros del Web » Programando para Internet » PHP »

Duda para consultar en base de datos

Estas en el tema de Duda para consultar en base de datos en el foro de PHP en Foros del Web. Hola tengo una duda y no se como se puede solucionar Quiero hacer una consulta a una base de datos, la consulta seria la siguiente. ...
  #1 (permalink)  
Antiguo 27/05/2010, 11:13
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 9 meses
Puntos: 0
Duda para consultar en base de datos

Hola tengo una duda y no se como se puede solucionar

Quiero hacer una consulta a una base de datos, la consulta seria la siguiente.

Código PHP:
Ver original
  1. $query = mysql_query("SELECT * FROM TEstancia WHERE id_parc='$parc' );

Pero mi problema es que la variable parc, es una variable de Javascript, como puedo hacer para realizar la consulta. Creo que pasar la variable Javascript a php no se puede no?
  #2 (permalink)  
Antiguo 27/05/2010, 11:27
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 10 meses
Puntos: 81
Respuesta: Duda para consultar en base de datos

Se puede si utilizas alguna funcion ajax.

Por ejemplo:
Supongamos que tienes un ID en un select y quieres buscar el nombre en la base de datos.
Código HTML:
<script language="Javascript">
	//Esta funcion permite hacer llamadas asincronicas.
	function crearAjax(){
		var xmlhttp = false;
		try{
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		}catch (e){
			try{
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			}catch (E){
				xmlhttp = false;
			}
		}

		if (!xmlhttp && typeof XMLHttpRequest != 'undefined'){
			xmlhttp = new XMLHttpRequest();
		}
		return xmlhttp;
	}
	function buscaInfo(id){
		var http = crearAjax();
		var url = "sacaDatos.php?id="+id;
		http.open("GET", url, true);
		http.onreadystatechange = function(){
			if (http.readyState == 4){
				var json = eval('(' + http.responseText + ')');
				alert("json");
			}
		}
		http.send(null);
	}
</script>
<select id="test" name="test" onClick="buscaInfo(this.options[this.selectedIndex].value)">
	<option value="1">1</option>
	<option value="2">2</option>
</select> 
Y la pagina php seria algo asi:
Código PHP:
<?php
$id 
$_GET['id'];
$sql "SELECT nombre FROM tabla WHERE ID=".$id;
$result mysql_query($sql);
while(
$data mysql_fetch_array($result)){
    return 
''.json_encode($data['nombre']).'';
}
return 
'No existe';
?>
De esta manera estas llevando el id de javascript a una pagina php y esta te devuelve el valor que encuentre y en caso contrario "No existe" en un alert();

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 27/05/2010, 12:12
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Duda para consultar en base de datos

El problema que tengo es que no tengo que mandar los datos a una pagina php. Tengo el codigo php y javascript en la misma pagina
Lo necesito porque tengo un calendario javascript y ahora tengo que marcar los dias ocupados y libres, entonces primero tengo una fucnion que crea el calendario y ahora segun me retorne la base de datos pues cambia el color de los dias, no se si me explico bien.

Hay alguna forma mas sencilla de hacerlo
  #4 (permalink)  
Antiguo 27/05/2010, 13:21
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 10 meses
Puntos: 81
Respuesta: Duda para consultar en base de datos

Cita:
Iniciado por jawir
Hay alguna forma mas sencilla de hacerlo
Eso depende de cual sea tu definicion de sencillo.

En terminos practicos, puedes recargar la pagina para enviar un valor por get o post y tomar ese dato cada vez que cargas la pagina.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!

Etiquetas: consultar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:21.