我有 html (php) 格式的表单。此表单包括文本区域,用于将来自交换机、路由器等的日志保存到数据库。
终端的命令行通常有 80 个列(在线字节),所以我将属性列设置为 80。
<tr>
<td><label for="taskText">Text:</label> </td>
<td><textarea name="taskText" id="taskText" cols="80" rows="10" required></textarea></td>
</tr>
动机:我为什么要这样做?我在数据库中有一个表,它有这个列 id (INT-autoincrement)、log1(TEXT)、log2(TEXT)。
用户将两个日志保存到数据库中,然后我从数据库中获取它们并将 log1 保存到字段 $log1 并将 log2 保存到字段 $log2,其中 $log1 将是数组,其中键将是行。
例如:`
$log1[0]="line1";
$log1[1]="line2";
$log1[2]="line3";`
问题:所以问题是将日志文本复制到textarea,然后将其正确保存到数据库(MYSQL)到TEXT类型的字段(我选择了这个希望很好)并保留了行尾(不知何故),然后加载从数据库到数组的日志,其中每个键都是一行(例如现在没有行尾标记的示例)。
我的解决方案:
在保存到数据库之前使用函数 nl2br 并在从数据库加载期间使用函数爆炸:
$log1=explode("<br />", $stringWithLogLoadedFromDatabase);
但我不确定这是否是一个好的解决方案。还有其他想法吗?
注意:
我在那里写了我的解决方案的一些背景,但主要问题只是输入文本(日志)的行尾,我将其复制到文本区域并保存到数据库中。所以我现在需要知道原来的行尾在哪里才能使用这些行。