MySQL文本格式

时间:2011-06-02 12:49:20

标签: php mysql types type-conversion

Hej家伙,

我编写了一个访问数据库的小脚本脚本,只显示给定查询的行。它与它们回应一个表,但似乎有一些排版错误导致问号。有什么暗示我可以做些什么来解决这个问题?这是一个截图:文字格式“>

这是我用来获取和显示数据的代码

$result = mysql_query($sql);
        if(mysql_num_rows($result)>0){
            echo "<div style='float:top;clear:both;'>";
            echo "<table border='1'>";
            echo "<th>id</th><th>project</th><th>publisher</th><th>country</th><th>contact</th><th>mail</th><th>agent</th><th>report</th><th>todo</th><th>by who</th><th>done(date,text)</th><th>priority</th>";
            while($row = mysql_fetch_array($result)){
                echo "<tr>";
                echo "<td>".$row[0]."</td><td>".$row[1]."</td><td>".$row[2]."</td><td>".$row[3]."</td><td>".$row[4]."</td><td>".$row[5]."</td><td>".$row[6]."</td><td>".$row[7]."</td><td>".$row[8]."</td><td>".$row[9]."</td><td>".$row[10]."</td><td>".$row[11]."</td>";
                echo "<td><form method='POST' action='insert.php'><input type='submit' name='edit' value='edit'/><input type='hidden' name='hiddenID' value='".$row[0]."' /><input type='hidden' name='hiddenDB' value='".$_POST['db']."' /><input type='hidden' name='hiddenProject' value='".$row[1]."' /><input type='hidden' name='hiddenPublisher' value='".$row[2]."' /><input type='hidden' name='hiddenCountry' value='".$row[3]."' /><input type='hidden' name='hiddenContact' value='".$row[4]."' /><input type='hidden' name='hiddenMail' value='".$row[5]."' /><input type='hidden' name='hiddenAgent' value='".$row[6]."' /><input type='hidden' name='hiddenReport' value='".$row[7]."' /><input type='hidden' name='hiddenTodo' value='".$row[8]."' /><input type='hidden' name='hiddenBywho' value='".$row[9]."' /><input type='hidden' name='hiddenDone' value='".$row[10]."' /><input type='hidden' name='hiddenPriority' value='".$row[11]."' /></form></td>";
                echo "</tr>";
            }
            echo "</table>";
            echo "</div>";

p.s。当我使用phpmyadmin检查数据集时,看起来像德语“ß”这样的特殊字符也没有正确插入到数据库中

2 个答案:

答案 0 :(得分:1)

我建议您使用UTF-8字符集。

您应该将您的table / colunmn charset设为utf8_general_ci

然后在您的PHP脚本启动时作为第一个查询

SET NAMES 'utf-8'

答案 1 :(得分:0)

对于显示数据,通过在从DB获取数据之前运行下一个代码来解决西里尔字符的相同问题:

 mysql_query ("set character_set_client='cp1251'"); 
 mysql_query ("set character_set_results='cp1251'"); 
 mysql_query ("set collation_connection='cp1251_general_ci'");

为您的案件使用适当的德国字符集。