Home  >  Article  >  Backend Development  >  ajax问题。在线结贴。

ajax问题。在线结贴。

WBOY
WBOYOriginal
2016-06-23 14:00:36959browse

我有个快速搜索功能。但是通过测试。发现 我输入到文本框的汉字。是乱码。之前曾经用过一个函数转换过 就好用了。但是又忘记是那个函数了。我把大概代码贴出来。大神们来帮帮我 。急

<select name="suppler_id" style="width:100px;">                                        <option value="0">选择供应商</option>                                        <?php foreach($suppler_option as $val){?>                                            <option value="<?php echo $val['id'];?>" <?php if(isset($suppler_id) && $suppler_id==$val['id']){echo 'selected="selected"';}?>><?php echo $val['true_name'];?></option>                                        <?php }?>                                    </select>									快速搜索客户:									<input type="text" id="username" size="10px;">									<span id="userdiv">	                                    <select name="user_id" style="width:100px;">	                                        <option value="0">选择客户</option>	                                        <?php foreach($user_option as $val){?>	                                            <option value="<?php echo $val['id'];?>" <?php if(isset($user_id) && $user_id==$val['id']){echo 'selected="selected"';}?>><?php echo $val['true_name'];?></option>	                                        <?php }?>	                                    </select>									</span>




<script type="text/javascript">$(document).ready(function () {    $(function(){        $("#username").live('keyup',function(){			var username = $(this).val();			if(username != ''){				$.post('../userajax.php',{'username':username},function(msg){                    $("#userdiv").html(msg)                });			}		})    })});</script> 


回复讨论(解决方案)

我的userajax.php代码

<?php	$username = $_POST['username'];	include('config.php');    include('db.php');    $db    = new db();    $db->connect($db_config);	$sql = 'select id,true_name from users where user_type = 1 and true_name like "%'.$username.'%"';	//echo $sql;exit();	$rs = mysql_query($sql);	$html = '<select name="user_id" style="width:100px;padding:5px;">';	$html .= '<option value="0">请选择客户</option>'; 	while (@$row=mysql_fetch_array($rs)) {		$html .= "<option value=".$row['id'].">".$row['true_name']."</option>";	}	$html .= '</select>';	echo $html;?>

先查看下你的页面的字符集编码,保持html页面与php的编码一致,应该是编码不一致导致的

先查看下你的页面的字符集编码,保持html页面与php的编码一致,应该是编码不一致导致的

检查过了。 都是gbk 。 我以前用过一个函数改好过。但是我忘记是那个函数了

string iconv ( string $in_charset , string $out_charset , string $str )

  谢谢了 自己解决了 

$_POST['username']=iconv("UTF-8","gbk",$_POST["username"]);


我把ajax这样处理就可以了

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn