通过PHP在数据库中插入Degree符号

Sar*_*rah 4 php mysql database symbols

您好StackOverflow的朋友,

我在我的数据库中存储温度,但我无法添加度数符号.我的代码是:

$que = "Insert into tblTempForecast (DateTimePosted, Now, Tomorrow) VALUES(now(),'$CloseLow1 ° - $CloseHi1 °','$CloseLow2 ° - $CloseHi2 °')";
$insertTemp = mysql_query($que);
Run Code Online (Sandbox Code Playgroud)

我$CloseLow1等于15,$CloseHi1是20. $CloseLow2是18,$CloseHi2是22.

但是,使用上面的代码,它只插入$CloseLow1和CloseLow2.它应该在数据库上插入ff:

ID (auto)              DateTimePosted             Now            Tomorrow
1                      2013-11-18 15:25:48       15°-20°         18°-22°
Run Code Online (Sandbox Code Playgroud)

STT*_*LCU 11

  1. 不要使用mysql_*函数,因为它们已被弃用.了解PDO,这是现在做事的方式.
  2. 不保存HTML编码的字符.始终将它们存储为UTF-8(或您喜欢的字符集,即使我建议您使用UTF-8)
  3. 如果将它们存储为纯UTF-8字符,则此问题将立即解决.请记住,您需要调用htmlentities或htmlspecialchars获取所获取的值.
  4. 为什么要将值存储为字符串,而不是4个单独的字段?您将能够获得更大的灵活性(现在可以使用不能使用字符串的整数进行平均值和各种计算)并且可以将°问题留给页面呈现脚本而不是与DB字符编码搏斗.

对不起,如果我不直接解决你的问题,但我认为如果你走高端路线并解决问题的根源而不是表面问题,那么从长远来看你会更好.

特别是n°4.真的,考虑一下.