当我从我的数据库中获取数据到我的 php.ini 时。我明白了,当我检查它的来源时,它看起来像这样:
<li class="ui-state-default"><input type="checkbox" id="check1" class="chk" name="countryname[]" value="AF
" > AFGHANISTAN`
在value
字段你可以看到AF
之后有空格.现在这里出现的问题是这些空间不在数据库中,我想跳过这些空间,这甚至不在我的 php 代码中。嗯,它们可能在我的数据库中,但我想跳过它们或从数据库中删除它们。
这是我的代码
<ul id="sortable"> <? while($row = mysql_fetch_array($result)) { ?> <li class="ui-state-default"><input type="checkbox" id="check1" class="chk" name="countryname[]" value="<?echo urldecode($row['Code']);?>" <? $reflex = mysql_query("select distinct * from geocity where isAllowed='1' AND country='" . $row['Code'] . "'"); $count = mysql_num_rows($reflex); if ($count == 0){echo '';}else{echo 'checked';} ?>> <? echo $row['CountryName']; ?> </li> <? }; ?>
最佳答案
您可以在选择数据时使用 TRIM(BOTH '\r\n\t' FROM [列名])
来删除伪造的结尾和开头。
在 PHP 中,您可以只使用 trim()
,因为它已经删除了制表符、换行符等。
如果你清理了数据库中的那些字段,你还应该在字符串中寻找中断并用 REPLACE 杀死它们 :)
关于php - 如何从mysql中转义php中的空格和中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15910450/