douyi2798 2014-12-03 14:41
浏览 103
已采纳

保留SQL插入的换行符 - PHP

I have a textarea that is submitted via post. Before inserting it I am doing this:

mysql_real_escape_string($notes)

And I am outputting the retrieved record with:

stripslashes($notes)

However when I do the line breaks are removed and I get one giant paragraph.

What is the proper method to store a textarea with linebreaks and output the retrieved data?

Not sure if it matters but I am inserting to a Mssql database.

  • 写回答

1条回答 默认 最新

  • dongshuo1856 2014-12-03 14:49
    关注

    stripslashes is definately not the way to output to html, to escape untrusted input, use htmlspecialchars.

    Best way is to make use of white-space css rule:

    <div style="white-space: pre-wrap"><?php echo htmlspecialchars($notes) ?></div>
    

    If you see extra slashes on output, you have wrong data in database. Fix that, not the output.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
  • ¥15 前端echarts坐标轴问题