我把图片地址保存到数据库 如E:/apache/htdocs/ userupload/ 0.jpg
然后我从数据库中输出地址 会变成E:apachehtdocs userupload 0.jpg
斜杠都不见了 请教如何还原原来的地址呢

解决方案 »

  1.   

    /不是含有特殊意义的转义符,mysql不会凭空干掉它。肯定是你的PHP代码哪里处理掉了斜杠
    你可以 var_dump( $SQL插入语句 ); 看看
      

  2.   

    你打印出的插入前路径是这样 E:/apache/htdocs/ userupload/ 0.jpg 吗?
    如果是反斜杠 \ ,那么Mysql将把它当作转义符处理。
      

  3.   

    对要插入的值 mysql_real_escape_string() 或 addslashes() 转义即可
      

  4.   

    E:\apache\htdocs\userupload\user.jpg
    这个地址可以正确输出图片  这是我在数据库中默认保存的地址 
    可是用户注册的地址
    E:\apache\htdocs\ userupload\ 9.jpg
    因为有了空格 图片为什么就不能正确输出了呢
      

  5.   

    window 系统中,路径符可以是反斜杠,也可以是斜杠
    linux 系统中,路径符只能是斜杠
    为达到跨系统兼容的目的,路径符应该同一使用斜杠空格也是路径和文件名的一部分,所以有空格和没有空格是不同的文件
    是否能够删去空格,取决于真实的文件名
      

  6.   

    我用str_replace()函数发现空格怎么去不掉呢 各位有好的解决方法吗
      

  7.   

    我用str_replace 函数怎么去不掉空格呢  是不是反斜杠的原因呢