使用php在mysql中插入符号

时间:2015-04-23 05:56:07

标签: php mysql

我正在使用php和mysql,我在插入纬度和经度值以及度,min和sec符号时会遇到问题。即(°,',“)符号。< / p>

我已经推荐了几个网站并尝试了不同的方法,但我无法解决它。

首先我尝试复制符号并与3个用户输入值连接。

$latitude=$degree.'°'.$min.'''.$sec.'?'.'N';

然后在执行插入查询后,$ latitude变量值将插入数据库中,但符号将被替换为随机字符,如此处所示。

2˚3ʼ4ˮN (data stored in database)

然后我尝试使用html字符代码而不是符号。

$latitude=$degree.'&deg'.$min.'&#8217'.$sec.'#8221'.'N';

但它不起作用。它在数据库中显示相同的html字符。

我不知道是否存在html实体或其他问题。

2 个答案:

答案 0 :(得分:2)

在我看来,这些值应该存储而不包括其(DMS:Deg Min Sec)格式。

换句话说,我可以将纬度/经度(例如)存储为浮点值,并在显示时应用所需的格式。

仅举例:

  • 您可以将日期存储为2015-04-23,但可能会将其显示为4th April, 2015

  • 您可以将金额存储为10.50,但可能会将其显示为$10.50 USD

36°19'11.46" N为例,以纬度/经度为例,其中一种方法可能适用于您的情况:

  • 将其存储为36.31985,但使用所需的转化将其显示为36°19'11.46" N

  • 将其存储为36D19M11.46S N,但使用必需的字符串操作将其显示为36°19'11.46" N

  • 将其存储为四个部分lat_deglat_minlat_seclat_dir,但使用连接将其显示为36°19'11.46" N

可能有用的链接:

mysql-convert-degree-minutes-seconds-to-degree-decimal

latitude-and-longitude-datatype-and-storage-format

convert-dd-to-dms-in-mysql

converting-latitude-and-longitude-coordinates-between-decimal-and-degrees-minutes-seconds

whats-the-best-way-to-store-co-ordinates-longitude-latitude-from-google-maps

答案 1 :(得分:1)

尝试此功能:

 $result = mysqli_real_escape_string();

参考以下链接

http://php.net/manual/en/mysqli.real-escape-string.php