Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/10/2012, 02:32
Avatar de satjaen
satjaen
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 7 meses
Puntos: 10
Respuesta: Hospedaje sin limites Windows

Hola emprear, ahora tengo contratado hosting compartido con interdominios pero tengo un problema con las funcion mysqli que me da un error al hacer un autocompletar en campo de texto.Ellos me dicen que al ser hosting compartido por seguridad hay funciones deshabilitadas y me han ofrecido pasarme a VPS que es un servidor privado donde la admistración la tengo que hacer yo , pero cuesta el doble.
Te detallo el error:

Fatal Error: Class 'mysqli' not found in line 5



Este es el php del autocompletar

Código PHP:
<?php
    
    
// PHP5 Implementation - uses MySQLi.
    // mysqli('localhost', 'yourUsername', 'yourPassword', 'yourDatabase');
    
$db = new mysqli('localhost''xxxx' ,'xxxxxx''xxxxx');
    if (
$mysqli->connect_error) {
    die(
'Error de Conexión (' $mysqli->connect_errno ') '
            
$mysqli->connect_error);
}

/*
 * Use esto en lugar de $connect_error si necesita asegurarse
 * de la compatibilidad con versiones de PHP anteriores a 5.2.9 y 5.3.0.
 */
if (mysqli_connect_error()) {
    die(
'Error de Conexión (' mysqli_connect_errno() . ') '
            
mysqli_connect_error());
}

echo 
'Éxito... ' $mysqli->host_info "\n";
    
    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 apellidos FROM usuarios WHERE apellidos 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->value.'\');">'.$result->value.'</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!';
        }
    }
?>
Gracias y un saludo