【发布时间】:2014-01-01 13:08:20
【问题描述】:
我在 PHP/Jquery 中遇到问题。
我想要什么: 我有一个 PHP 页面,用于更改我网站中的文章。 该页面包含 PHP 中的 text 和 textarea 加上 1 个按钮。当我进入该页面时,该页面会自动从数据库中填充任何文本表单和文本区域。 我用这种形式写了一些包含大约 200-800 个字符的文章。该文章包含一些使用 Enter 键的换行符。当我按下我的保存按钮时,textarea 和文本表单中的文本以 VARCHAR/TEXT 类型存储在 SQL 数据库中以替换旧文章。我的保存按钮只是重新加载同一页面并使用 PHP 将文本保存在 textarea 中。我只是成功地动态地做到了,所以当我按下保存按钮时,textarea 和任何其他表单中的文本都不会变回旧文章。
问题:当 textarea 中的文本从 enter 键(而不是 wordwrap)换行时,当我从保存访问页面时,文本不想填充任何文本表单和 textarea按钮或只是从其他页面。因此,当我重新加载页面时,表单中的文本突然消失了。但是当我与我的管理员一起检查 PHP 时,文本也成功保存在 SQL 中的换行符。当我没有任何换行符时,这个问题并没有出现。
这是处理保存和读取数据库的 PHP 代码。
$judul = $_POST['inputEditJudul'];
$jenis = $_POST['inputEditJenis'];
$isiArt = $_POST['inputEditIsi'];
date_default_timezone_set('Indonesia/Jakarta');
$tanggal = date('Y-m-d');
if(isset($_POST['btn_Save'])) {
$sql = "UPDATE artikel
SET judul='".$judul."', jenis_artikel='".$jenis."', isi_artikel='".$isiArt."', tanggal= CAST('".$tanggal."'AS DATE)
WHERE id=".$_GET['id'].";";
mysql_query($sql,$link);
}
$sql = "SELECT * FROM artikel WHERE id=".$_GET['id'].";";
$result = mysql_query($sql, $link);
$row = mysql_fetch_array($result);
这是处理在同一页面中填写表单的 jquery 脚本。
<script>
$(document).ready(function(){
$("#inputEditJudul").val("<?php echo ($row['judul']) ?>");
$("#inputEditIsi").val("<?php echo nl2br($row['isi_artikel']) ?>");
var jenisArt = <?php echo $row['jenis_artikel'] ?>;
if ( jenisArt == 1){
$("#inputEditJenis").val("1");
} else {
$("#inputEditJenis").val("2");
};
});
</script>
这是我表单中的文本区域
....
<div class="form-group">
<label for="inputEditIsi">Isi Artikel</label>
<textarea class="form-control" id="inputEditIsi" name="inputEditIsi" rows="10" maxlength="800"></textarea>
</div>
....
如果可能,请使用 PHP/Jquery。我对ajax一无所知。
对不起,我的英语不好。我还是新手。
谢谢
【问题讨论】:
标签: javascript php jquery html forms