mysql输出,使用双引号和段落时显示“\r\n\r\n”和“\”如何摆脱?

esyap4oy  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(366)

我已经构建了一个html表单,并使用php将数据插入到phpmyadmin数据库中。每次我在文本区输入文本数据时,如下所示:
在文本区域字段中输入

当我使用mysql从数据库检索数据时,输出显示如下。
文本区域输出

以下是我提交表单后的mysql插入代码:

<?php
> if(isset($_POST['submit']))       {
> 
> $remarks = mysqli_real_escape_string($conn, $_POST["remarks"]);
> 
> $stmtinsert = $conn->prepare("INSERT INTO
> patient_continuation(REMARKS) 
>            VALUES (?);");
> 
>           mysqli_stmt_bind_param($stmtinsert, "s", $remarks); 
>           mysqli_stmt_execute($stmtinsert); 
> 
> }
?>

以下是数据检索代码:

<?php
$stmtquery = $conn->prepare("SELECT * FROM patient_continuation WHERE ID =?;");
mysqli_stmt_bind_param($stmtquery, "s", $con_id);
mysqli_stmt_execute($stmtquery);
$result = $stmtquery->get_result();
$row = $result->fetch_assoc();

?>

<label><b>Continuation Sheet </b></label>
<textarea class="form-control" tabindex="3" name="remarks" id="remarks" rows="12"><?php echo $row['REMARKS'];?></textarea>

有人能帮我解决这个问题吗,因为我的表单使用了许多textarea字段?

xytpbqjk

xytpbqjk1#

替换此代码 $remarks = mysqli_real_escape_string($conn, $_POST["remarks"]);$remarks = $_POST["remarks"]; . 如果使用准备好的语句,则不需要转义输入。
输出html时: <?php echo htmlspecialchars($row['REMARKS']);?> .
这应该能奏效。注意,后一种转义将不支持文本中的html标记。

相关问题