Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Открыть новую тему     Написать ответ в эту тему

Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D
дело не в том, где эта страница, а в том, что делается с данными из нее.
если они сохраняются и потом где то используются - опасно. если не сохраняются и нельзя ничего вставить в это поле автоматом извне - нормально.

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 11:08 20-04-2023
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
А то, что сразу после вставки текст с ошибками обрамляется стилями (с подчеркиванием) — нельзя то же самое сделать для заданного по рег. шаблону (только с другим стилем)?

Всего записей: 1368 | Зарегистр. 05-04-2010 | Отправлено: 11:19 20-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D

Цитата:
нельзя то же самое сделать для заданного по рег. шаблону (только с другим стилем)?

переопределяете класс .ql-snow .ql-editor a

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 11:21 20-04-2023
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
А как это можно осуществить, если в явном виде тег нельзя вставить? Например, задача выделить цветом все буквы, которые идут сразу после точки без пробела —
 

Код:
.replace(/\.([а-яёА-ЯЁa-zA-Z])/g, '<b>.$1</b>')

Всего записей: 1368 | Зарегистр. 05-04-2010 | Отправлено: 11:25 20-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D

Цитата:
А как это можно осуществить, если в явном виде тег нельзя вставить?

я же указал вам на что смотреть. вы не можете вставить тег в явном виде, но можете подготовить элемент массива в формате, который понимает quill. например используя attributes: { bold: true}, тогда вставится <strong> тег
просто регулярка тут не поможет, вам нужно будет кусок, что хотите вставить иначе, преобразовать в вид что я проквотил ранее. аналогично этому

Код:
 
                        newContent.push({  
                            insert: part,  
                           attributes: {  
                                color: '#ff0000',  
                                link: { "text":part, "index": newContent.length }
                            }
                        })  

 
кстати https://quilljs.com/docs/modules/clipboard/#dangerouslypastehtml

Цитата:
Improper handling of HTML can lead to cross site scripting (XSS) and failure to sanitize properly is both notoriously error-prone and a leading cause of web vulnerabilities. This method follows React’s example and is aptly named to ensure the developer has taken the necessary precautions.

 
копать тут

Код:
       lines.forEach(function(line, index) {
            var words = line.split(" ");
            words.forEach(function(word, index) {
                var parts = word.split("\n");
 
                parts.forEach(function(part) {
                    if (apo) {
                        part = part.replace(/[’'&#699;&#701;‘&#8219;]/gu, '&#700;');
                    }
                    var checkPart = part.replace(/[ –,.?!…«:;»()$+<=>\t/'‘"„“^|~]/gu, '').replace(/[—]/gu, '-');  
 
                  //  console.log(checkPart);
                    if (window.hunspell.spell(checkPart) || (checkPart === '-')) {
                        newContent.push({ insert: part })
                    } else if (checkPart.length == 0) {
                        newContent.push({ insert: part })
                    } else {
                        // console.log(part);
                        newContent.push({  
                            insert: part,  
                            attributes: {  
                                color: '#ff0000',  
                                link: { "text":part, "index": newContent.length }
                            }  
                        })  
                    }
                });
 
                if (index < words.length-1) {
                    newContent.push( { insert: " " } )
                }
            });
             
            if (index < lines.length-1) {
                newContent.push( { insert: "\n" } )
            }
        });

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 11:33 20-04-2023 | Исправлено: Mavrikii, 11:34 20-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый вечер!
 
Долго думал, в какой раздел задать вопрос - сорри, если ошибся!
 
Вот здесь http://fh7929mi.bget.ru/55.html на сервер заносится картинка, которая сразу воспроизводится. Перед занесением картинки директория uploads очищается, поэтому в ней всегда только один графический файл.  
 
Недостаток в том, что если при открытии страницы в директории uploads файл уже есть, то он не воспроизводится. Как сделать, чтобы картинка сразу воспроизводилась?
 
Содержимое файла upload-file.php :
 
<?php
 
$dirname = "uploads";
$dir = opendir($dirname);    // Открываем директорию
while(($file = readdir($dir)))      // В цикле считываем её содержимое
    {
    @unlink($dirname."/".$file);
    $adr = ($dirname."/".$file);
    }
   closedir($dir);    // Закрываем директорию
 
 
 
 
$uploaddir = './uploads/';
$file = $uploaddir . basename($_FILES['uploadfile']['name']);
 
$ext = substr($_FILES['uploadfile']['name'],strpos($_FILES['uploadfile']['name'],'.'),strlen($_FILES['uploadfile']['name'])-1);
$filetypes = array('.jpg','.gif','.bmp','.png','.JPG','.BMP','.GIF','.PNG','.jpeg','.JPEG');
 
if(!in_array($ext,$filetypes)){
    echo "<p>Данный формат файлов не поддерживается</p>";}
else{
    if (move_uploaded_file($_FILES['uploadfile']['tmp_name'], $file)) {
      echo "success";
    } else {
        echo "error";
    }
}
 
 
?>

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 21:57 21-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Долго думал, в какой раздел задать вопрос - сорри, если ошибся!

вы название темы видите? при чем тут php, если тема о javascript?
 

Цитата:
Как сделать, чтобы картинка сразу воспроизводилась?

получить содержимое папки, вставить URL картинки в страницу.
содержимое папки - https://www.php.net/manual/en/function.glob.php

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 22:02 21-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
вы название темы видите? при чем тут php, если тема о javascript?
Так я и написал в теме про javascript.
 

Цитата:
получить содержимое папки, вставить URL картинки в страницу.
С получением содержимого папки у меня нет проблем. А вот как в данном случае вставить URL картинки в страницу, чтобы сохранилась возможность загрузки других картинок?
 

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 23:43 21-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Так я и написал в теме про javascript.

у вас вопрос по php, а не js.
 

Цитата:
А вот как в данном случае вставить URL картинки в страницу, чтобы сохранилась возможность загрузки других картинок?

когда генерируете страницу с помощью php, вставляете в нее и тег картинки.
если страница статическая - делаете запрос к php скрипту, либо ajax и получаете URL картинки, либо вставляете  
<img src='script.php'>, а script.php проверяет и выводит содержимое файла-картинки, либо выдает какую то "пустую", если ничего нет. js тут.. ну разве что для ajax и все, если им пользоваться.

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 23:47 21-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HTML код такой:
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AJAX File Upload - Web Developer Plus Demos</title>
<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="js/ajaxupload.3.5.js"></script>
<link rel="stylesheet" type="text/css" href="./styles.css">
<script type="text/javascript" >
    $(function(){
        var btnUpload=$('#upload');
        var status=$('#status');
        new AjaxUpload(btnUpload, {
            action: 'upload-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"){
                    $('#files').html('<li><img src="./uploads/'+file+'" alt="" /><br />'+file+'</li>').addClass('success');
                } else{
                    $('<li></li>').appendTo('#files').text('Файл не загружен' + file).addClass('error');
                }
            }
        });
        
    });
</script>
</head>
<body>
<div id="mainbody" >
        <h3>&raquo; AJAX File Upload Form Using jQuery</h3>
        <!-- Upload Button, use any id you wish-->
        <div id="upload" ><span>Выбрать файл<span></div><span id="status" ></span>
        
        <ul id="files" ></ul>
</div>
 
</body>
 
Допустим, файл картинки wowa.jpg . Где здесь должен появиться этот адрес при генерации страницы?

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 00:03 22-04-2023 | Исправлено: Vladsvn, 00:06 22-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Где здесь должен появиться этот адрес при генерации страницы?

страница статическая или выдается с помощью php?

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 00:47 22-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Страница статическая, и нет проблем вставить в нее нужный php код.

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 09:23 22-04-2023 | Исправлено: Vladsvn, 09:23 22-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn
статическая - значит .html, а не генерится php кодом.
 

Цитата:
и нет проблем вставить в нее нужный php код.

ну так зачем тогда в javascript лезем?
 

Код:
foreach (glob("/путь/*.{jpg,png,gif}", GLOB_BRACE) as $filename)
{
   echo '<img src="тут_URL_папки/' . basename($filename) . '">';  
}

что то такое. если картинка одна - выведется одна, если несколько - выведутся несколько.
если нужно только одна, после echo можно сделать break;

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 09:30 22-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
С таким выводом мы потеряем нужный функционал. При первичной загрузке html страницы, картинка выведется и так и останется. Ведь при занесении картинок страница не обновляется. Мы будем заносить новые картинки, а эта так и будет торчать. Нужно стартовую картинку заносить таким образом, чтобы следующая ее заменила. Как на макете http://fh7929mi.bget.ru/55.html  
 
Вероятнее всего, для этого придется лезть в js.
 
****  
Для контроля я ищу картинки так:
$dir = opendir ("uploads/.");
readdir ($dir);
readdir ($dir);
while ( $file = readdir ($dir)){
    echo "$file<br>";
}
closedir ($dir);  
 

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 10:04 22-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Ведь при занесении картинок страница не обновляется

ну так удалите/замените ее с помощью js!
сразу после того, как поняли, что новая загружена нормально. элементарно же.

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 10:08 22-04-2023
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
элементарно же.
Для гуру элементарно, я не сумел.
 
Как конкретно это сделать?

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 10:19 22-04-2023 | Исправлено: Vladsvn, 10:21 22-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Как конкретно это сделать?

вот тут

Цитата:
$('#files').html('<li><img src="./uploads/'+file+'" alt="" /><br />'+file+'</li>').addClass('success');

вместо вставки элемента с img, заменить src уже у существующего (если он есть), либо просто удалить ранее существущий, первоначальный (назначить ему id или еще что, для выборки)

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 10:32 22-04-2023
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем доброго времени суток.
 
На работе сослуживцы поспорили - чуть до драки дело не дошло. Хорошо рядом были люди успели разнять. Мне тоже стало любопытно. Захотел выяснить.
 
Вопрос такой:
 
Можно ли средствами JS, с браузера открыть какой-нибудь exe-файл, с диска (HD) и распарсить его? Ну т.е. выяснить сколько у него секций, точка входа, импорт и т.д и т.п? А потом результат парсинга так же сохранить на диск (HD).Т.е. как делают это программы специально для этого предназначенные и написанные на C/C++, Python, C#... Если можно, то какие есть в JS для этого АПИ, ну и немного пояснить, что, как, зачем? Заранее спасибо всем откликнувшимся.  
 

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 16:59 24-04-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
Можно ли средствами JS, с браузера открыть какой-нибудь exe-файл, с диска (HD) и распарсить его?

да, но не автоматически - файл нужно выбрать.

Цитата:
А потом результат парсинга так же сохранить на диск (HD).

да, но не автоматически, опять же, куда то, а вызвав диалог сохранения.
копать
https://github.com/jet2jet/pe-library-js (это, правда, для Node.js)
https://sourceforge.net/projects/pejs/
https://formats.kaitai.io/microsoft_pe/javascript.html

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 20:37 24-04-2023 | Исправлено: Mavrikii, 20:40 24-04-2023
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Почему правильный шаблон не работает в js-коде? Прописана замена лат. буквы "a" под ударением в составе кириллицы - на прописную "А" -
 
  obj.value = obj.value.replace(/([а-яё])?\K&#225;(?=(?(1)|[а-яё]))/gi, 'А');
 

Код:
р&#225;зница
&#225;рзница
ррзниц&#225;

Всего записей: 1368 | Зарегистр. 05-04-2010 | Отправлено: 20:40 24-04-2023 | Исправлено: D1D1D1D, 20:55 24-04-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru