Я знаю, что это старый, потому что я искал в Интернете 3 часа, и я просто не могу понять это. Я знаю, что где-то в моем коде мне нужно поставить html_entity_decode
или htmlspecialchars_decode
, потому что я считаю, что объекты html не возвращаются при извлечении из базы данных ... но где? Неважно, редактирование или создание ... и я попытался использовать как CKeditor, так и TinyMce. То же самое происходит. Без плагинов .. без каких-либо изменений, внесенных в редакторы.Вывод HTML-тегов CKeditor и TinyMCE на опубликованное содержимое
Редактирование
<?php find_selected_page(); ?>
<?php
if (isset($_POST['submit'])) {
// Process the form
$id = $current_subject["id"];
$menu_name = mysql_prep($_POST["menu_name"]);
$position = (int) $_POST["position"];
$visible = (int) $_POST["visible"];
$content = mysql_prep($_POST["content"]);
// validations
$required_fields = array("menu_name", "position", "visible", "content");
validate_presences($required_fields);
$fields_with_max_lengths = array("menu_name" => 30);
validate_max_lengths($fields_with_max_lengths);
if (empty($errors)) {
// Perform Update
$query = "UPDATE subjects SET ";
$query .= "menu_name = '{$menu_name}', ";
$query .= "position = {$position}, ";
$query .= "visible = {$visible}, ";
$query .= "content = '{$content}' ";
$query .= "WHERE id = {$id} ";
$query .= "LIMIT 1";
$result = mysqli_query($connection, $query);
if ($result && mysqli_affected_rows($connection) == 1) {
// Success
$_SESSION["message"] = "Stranica uređena.";
redirect_to("manage_content.php?subject={$id}");
} else {
// Failure
$_SESSION["message"] = "Uređivanje stranice neuspjelo.";
}
}
} else {
// This is probably a GET request
} // end: if (isset($_POST['submit']))
?>
Вот где он повторил
<textarea name="content" id="editor1" class="form-control" rows="20" cols="80"><?php echo htmlentities($current_subject["content"]); ?></textarea>
<script>
// Replace the <textarea id="editor1"> with a CKEditor
// instance, using default configuration.
CKEDITOR.replace('editor1', {
language: 'hr',
});
</script>
Вот функции
function find_all_subjects($public=true) {
global $connection;
$query = "SELECT * ";
$query .= "FROM subjects ";
if($public) {
$query .= "WHERE visible = 1 ";
}
$query .= "ORDER BY position ASC";
$subject_set = mysqli_query($connection, $query);
confirm_query($subject_set);
return $subject_set;
}
function find_subject_by_id($subject_id, $public=true) {
global $connection;
$safe_subject_id = mysqli_real_escape_string($connection, $subject_id);
$query = "SELECT * ";
$query .= "FROM subjects ";
$query .= "WHERE id = {$safe_subject_id} ";
if($public){
$query .= "AND visible = 1 ";
}
$query .= "LIMIT 1";
$subject_set = mysqli_query($connection, $query);
//Test if there was a query error
confirm_query($subject_set);
if($subject = mysqli_fetch_assoc($subject_set)) {
return $subject;
}else {
return null;
}
}
function find_selected_page($public=false) {
global $current_subject;
global $current_page;
if(isset($_GET["subject"])) {
$current_subject = find_subject_by_id($_GET["subject"], $public);
$current_page = null;
}elseif (isset($_GET["page"])) {
$current_page = find_page_by_id($_GET["page"], $public);
$current_subject = null;
}else{
$current_subject = null;
$current_page = null;
}
}
Таким образом, в конце концов, это должно выглядеть следующим образом: Вот это некоторые текст на публичной странице
Вместо этого он выглядит следующим образом
<p>Here is <strong>some</strong> text on the public page</p>
Есть ли что-нибудь еще добавить сюда из кода, нужно видеть?
Любые предложения?
Можно ли отобразить эхо-текст, а затем редактор принимает его и отображает его без тэгов html?
Или как я могу это использовать?
PHP’s strip_tags() equivalent MYSQL function
Если я добавить
$content = mysql_prep(strip_tags(html_entity_decode($_POST["content"])));
тогда нет никакого форматирования текста ..
Заранее спасибо ...