Ответов: 20 Просмотров: 3882
|
Все просто, используем функцию mysqli_set_charset с 7 по 10 строки, больше танцевать не нужно:
PHP:
скопировать код в буфер обмена
<? // PHP5 Implementation - uses MySQLi. // mysqli('localhost', 'yourUsername', 'yourPassword', 'yourDatabase') $mysqli = new mysqli('localhost', 'login', 'password', 'base'); /* change character set to utf8 */ if (!$mysqli->set_charset("utf8")) { printf("Error loading character set utf8: %s\n", $mysqli->error); } } else { // Is there a posted query string? if(isset($_POST['queryString'])) { $queryString = $mysqli->real_escape_string($_POST['queryString']); // Is the string length greater than 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 = $mysqli->query("SELECT yourName FROM yourTable WHERE yourName 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->pname.'\');">'.$result->pname.'</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!'; } } ?>
|