Реализую добавление картинки в новость и смысл таков: при добавлении картинки на сервер - записывается сразу значение в текстовое поле, чтобы она в будущем вызвалась.
Код добавления: $('textarea[name=full_text]').append('<br><br><img src="/files/img/'+filename+'" alt="'+filename+'">');
Код, который должен получиться: какой-то текст + ⟨br⟩⟨br⟩⟨img src="/files/img/'+filename+'" alt="'+filename+'"⟩.
Код не добавляется, а просто заменяет весь текст, при том, что в коде это выглядит так, а в реальности, как видно в самой форме, сидит лишь текст, который был записан ранее, также он только и добавляется в базу.
Собственно, весь код:
<?php
if (!session_id())
session_start();
require_once('../functions/functions.php');
if (isset($_POST['submit'])) {
$title = $_POST['title'];
$intro_text = $_POST['intro_text'];
$full_text = $_POST['full_text'];
$img_url = $_POST['img_url'];
$result = addArticlesAdm($title, $intro_text, $full_text, $img_url);
if ($result) {
echo '<script>alert("Новость успешно добавлена!")</script>';
exit("<meta http-equiv='refresh' content='0; url= /admin'>");
}
else
echo '<script>alert("Ошибка добавления новости.")</script>';
}
?>
<!DOCTYPE html>
<html>
<head>
<title>ДС "Зоренька"</title>
<meta charset = "utf-8" />
<meta name = "keywords" content = "Оцифиальный, сайт, МБДОУ, ДС, Зоренька, dszorenka, zorenka" />
<meta name = "description" content = "Официальный сайт МБДОУ ДС Зоренька." />
<meta name = "viewport" content = "width=device-width, initial-scale=1" />
<link href = "/img/icons/logo.ico" rel = "shortcut icon" type = "image/x-icon" />
<link href = "../css/style.css" rel = "stylesheet" />
<script src="../js/jquery-3.1.1.min.js"></script>
<script src="../js/jquery.nav.js"></script>
<script src="../js/ajaxupload.3.5.js"></script>
<script type="text/javascript">
function loadImage(btnUpload, status, fun) {
new AjaxUpload(btnUpload, {
action: './uploads_file.php',
name: 'uploadfile',
onSubmit: function(file, ext){
if (! (ext && /^(jpg|png|jpeg|gif)$/.test(ext))){
// extension is not allowed
status.text('Поддерживаемые форматы JPG, PNG или GIF');
return false;
}
status.text('Загрузка...');
},
onComplete: function(file, response){
//On completion clear the status
status.text('');
//Add uploaded file to list
if(response==="success") {
alert("Картинка загружена.");
// $('<li></li>').appendTo('#files').html('<img src="../files/img/'+file+'" alt="" /><br />'+file).addClass('success');
} else {
alert("Ошибка загрузки картинки.");
// $('<li></li>').appendTo('#files').text('Файл не загружен' + file).addClass('error');
}
fun(file);
}
});
}
$(function(){
$('#load_additional_image').click(function() {
loadImage($('#load_additional_image'), $('.status'), function(filename) {
$('textarea[name=full_text]').append('<br><br><img src="/files/img/'+filename+'" alt="'+filename+'">');
});
});
$('#upload').click(function() {
loadImage($('#upload'), $('.status'), function(filename) {
$('input[name=img_url]').val(filename);
});
});
});
</script>
</head>
<body>
<div class = "container">
<!-- ------------Хидер------------- -->
<?php
require_once('../blocks/header.php');
?>
<center><h1 class="h1All"><a href="/admin/index.php">Панель администратора</a></h1></center>
<p class="txtPAll"><br>
<form method="POST" class = "formAddAdmin">
<label class = "lableFormAdd" for="title">
Заголовок<br>
<input type="text" name="title" class = "inputFormAdd" autofocus required>
</label><br>
<label class = "lableFormAdd" for="intro_text">
Вступительный текст<br>
<input type="text" name="intro_text" class = "inputFormAdd" required>
</label><br>
<label class = "lableFormAdd" for="full_text">
Текст<br>
<textarea name="full_text" class = "textareaFormAdd" required></textarea>
</label><br>
<div id="upload" class="loadImgBtn">
<span>Выбрать файл для основной картинки</span>
</div>
<div id="load_additional_image" class="loadImgBtn">
<span>Выбрать файл для доп. картинки</span>
</div>
<input type="hidden" name="img_url">
<!--<ul id="files" ></ul>-->
<input type="submit" name = "submit" value="Сохранить" class = "btnFormAdd">
<span class="status"></span>
</form>
</p>
</div><!-- .container -->
<div class = "clear"></div>
</main><!-- .content -->
<!-- ------------Футер------------- -->
<?php
require_once('../blocks/footer.php');
?>
</body>
</html>
Весь прикол еще в том, что все работало, потом добавил перед вызовом картинки "\n" для переноса каретки на новую строку и все перестало работать. Как видите, ее нету, но все равно не работает ничего. Однако, до того, как перестало работать я менял еще много что, возможно, даже скорее всего, накосячил, но этого не вижу...
Так он так и не добавится, используйте
var text = $('textarea').val();
$('textarea').val(text + 'текст');
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имеется резиновая галереяИ пока фотографии одинаковой высоты, всё выглядит нормально, но как только какая-то фотка больше или меньше, естественно,...
Никак не получается выровнятьlogo по центру, при этом чтобы два элемента меню
Доброго времени суток, помогите решить проблему : при попытке сделать запрос на сайт sscasinoonline дает ошибку xNet
Как можно обновить через код значение вычисляемого поля в проекте? При открытии в project'e в толстом клиенте - поле обновляется само и сохраняется...