Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/02/2011, 12:54
fabimon
 
Fecha de Ingreso: noviembre-2008
Mensajes: 3
Antigüedad: 16 años, 1 mes
Puntos: 0
Exclamación Ayuda Con pasar una variable

Hola a todos, mi problema es que no se como pasar una variable php ataves de ajax a otro archivo php, me explico:

Este es el autocomplete,
esto manda una variable mientras escribo en el input text a mi_php.php
Código HTML:
 <script src='jquery.js'></script>

<script type="text/javascript">
	function lookup(inputString) {
		if(inputString.length == 0) {
			// Hide the suggestion box.
			$('#suggestions').hide();
		} else {
			$.post("mi_php.php", {queryString: inputString}, function(data){
				if(data.length >0) {
					$('#suggestions').show();
					$('#autoSuggestionsList').html(data);
				}
			});
		}
	} // lookup
	
	function fill(thisValue) {
		$('#inputString').val(thisValue);
		setTimeout("$('#suggestions').hide();", 200);
	}
		
</script>

<input name="txt" type="text"  id="inputString" onblur="fill();" onkeyup="lookup(this.value);" value="" size="30" /> 

mi_php.php
aqui recibe la varible que escribo y le hace una serie de comprobaciones.

Código PHP:
    // PHP5 Implementation - uses MySQLi.
    // mysqli('localhost', 'yourUsername', 'yourPassword', 'yourDatabase');
    
$db = new mysqli('localhost''root' ,'''test');
    
    if(!
$db) {
        
// Show error if we cannot connect.
        
echo 'ERROR: Could not connect to the database.';
    } else {
        
// Is there a posted query string?
        
if(isset($_POST['queryString'])) {
            
$queryString $db->real_escape_string($_POST['queryString']);

            
// Is the string length greater than 0?
            
            
if(strlen($queryString) >0) {
                
// Run the query: We use LIKE '$queryString%'
                // The percentage sign is a wild-card, in my example of countries it works like this...
                // $queryString = 'Uni';
                // Returned data = 'United States, United Kindom';
                
                // YOU NEED TO ALTER THE QUERY TO MATCH YOUR DATABASE.
                // eg: SELECT yourColumnName FROM yourTable WHERE yourColumnName LIKE '$queryString%' LIMIT 10

                
$query $db->query("SELECT usuario,apellido,rut FROM usuarios WHERE usuario LIKE '$queryString%' LIMIT 10");
                if(
$query) {
                    
// While there are results loop through them - fetching an Object (i like PHP5 btw!).
                    
while ($result $query ->fetch_object()) {
                        
// Format the results, im using <li> for the list, you can change it.
                        // The onClick function fills the textbox with the result.
                        
                        // YOU MUST CHANGE: $result->value to $result->your_colum
                         
echo '<li onClick="fill(\''.$result->usuario.' ',$result->apellido.'\')">'.$result->usuario.' '.$result->apellido.'</li>';                     
                        
                        
                     }
                } else {
                    echo 
'ERROR: There was a problem with the query.';
                }
            } else {
                
// Dont do anything.
            
// There is a queryString.
        
} else {
            echo 
'There should be no direct access to this script!';
        }
    } 
Lo que no puedo lograr hacer es mandar otras variables a mi_php.php desde el js para hacer el SELECT mas preciso porque hasta el momento ese SELECT solo me filta por el nombre de usuario que escriba. Es posible enviar otra variable?
Espero me entiendan.
Saludos, Gracias.