Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вставить код php в div (https://javascript.ru/forum/misc/84136-vstavit-kod-php-v-div.html)

Ubivectel 13.06.2022 17:32

Вставить код php в div
 
Привет мир!

Имеется простенькая форма с инпутом и кнопкой:

<form>
            <p class="flex">Режим защиты от спама
                <input id="pass-kide" type="text" name="" value="">
				<input id="pass-btn" type="submit" value="Ok">
            </p>
        </form>


задача что бы при клике на "pass-btn" скрипт удалял со страницы див с айди "secure", а в див
<div id="form-kide"></div>

Вставлял вот такую строку
<?php include "kide.form.hide.php"; ?>


Кое как написал это:

let formKide = document.querySelector('#form-kide')
    let btnKide = document.querySelector('#pass-btn').onclick = myClick;
    
    function myClick() {
        let inputKide = document.querySelector('#pass-kide').value;
        if (inputKide == 'xxx') {
            document.querySelector('#secure').remove();
            formKide.innerHTML = '<?php include "kide.form.hide.php"; ?>';
            
        };
    };


Див удаляет, а вот php вставлять не хочет :( и наверное нужно что бы сохранял эти изменения в localStorage :help:

рони 13.06.2022 19:13

Ubivectel,
браузер не умеет в php ...

Ubivectel 13.06.2022 19:24

Строго говоря мне нужно в тег
<div id="form-kide"></div>


добавить вот такое содержимое:

<div id="KIDE_form"<?php if (!$this->user->captcha) echo ' style="display:none"'; ?>>
		<div class="nikname">
			<?php echo JText::_("COM_KIDE_NOMBRE"); ?>
			<?php if ($this->user->id) : ?>
			<em id="KIDE_my_name"><?php echo stripslashes($this->user->name); ?></em>
			<?php else : ?>
			<input size="15" minlength="2" type="text" name="KIDE_nuevo_nick" onkeyup="return kide.change_name_keyup(event, this)" onblur="kide.change_name(this)" value="<?php echo stripslashes($this->user->name); ?>" />
			<?php endif; ?>
		</div>
		<?php $this->display('bbcode'); ?>
		<div class="inline">
		<textarea <?php echo $this->maxlength; ?> class="<?php echo KideHelper::getRango($this->user->rango, 'KIDE_dc_'); ?>" id="KIDE_txt" placeholder="т" cols="50" rows="4" name="txt" onkeypress="return kide.pressedEnter(event, false)" onkeydown="kide.check_shift(event, false, false)" onkeyup="kide.check_shift(event, true, false)"></textarea>
		
		<?php if ($this->button_send) : ?>
			<div id="KIDE_button_send" onclick="kide.sm()">
			<img src="/images/send.png" class="animated kbs" id="ksanim" draggable="false">
			<?php echo JText::_("COM_KIDE_SEND"); ?></div>
		<?php endif; ?>
	</div>


Одним словом нужно, что бы после клика на
<input id="pass-btn" type="submit" value="Ok">


оно отображалось на странице, пока в растерянности...

рони 13.06.2022 19:27

Ubivectel,
:-?

рони 13.06.2022 19:56

Ubivectel,
<div id="form-kide"></div>
  <script>
fetch("kide.form.hide.php")
  .then(response => {
    return response.text()
  })
  .then(data => {
    document.querySelector("#form-kide").innerHTML = data;
  });
  </script>

рони 13.06.2022 20:08

Ubivectel,
function myClick() {
            let inputKide = document.querySelector('#pass-kide').value;
            if (inputKide == 'xxx') {
                document.querySelector('#secure').remove();
                fetch("https://noviy-kovcheg.ru/smoking/kide.form.hide.php")
                    .then(response => {
                        return response.text()
                    })
                    .then(data => {
                        document.querySelector("#form-kide").innerHTML = data;
                    });

            };
        };

        document.querySelector('#pass-btn').addEventListener('click', myClick);

Ubivectel 13.06.2022 20:32

Интересный эффект получился, при вводе xxx дублирует в
<div id="form-kide"></div>

содержимое всей страницы
а после того как отрабатывает document.querySelector('#secure').remove();
страница обновляется, #secure снова появляется

рони 13.06.2022 20:45

Ubivectel,
js это код, а не магия)))

Ubivectel 13.06.2022 20:48

По моему все же магия, и порой черная

В принципе все как-то близко уже работает ))))))))))

Ubivectel 13.06.2022 20:55

Заменил

"https://noviy-kovcheg.ru/smoking/kide.form.hide.php"

на

"https://noviy-kovcheg.ru/components/com_kide/templates/desctop/tmpl/kide.form.hide.php"

тоже самое...

рони 13.06.2022 21:21

Ubivectel,
???

Ubivectel 13.06.2022 21:24

Вписал в скрипт полный, абсолютный путь: fetch("https://noviy-kovcheg.ru/components/com_kide/templates/desctop/tmpl/kide.form.hide.php")

сейчас удаляет #secure и больше ничего не делает (

рони 13.06.2022 22:10

Цитата:

Сообщение от Ubivectel
и больше ничего не делает

а что должно делать?

Ubivectel 13.06.2022 22:20

Добавить в
<div id="form-kide"></div>
вот этот код:

<div id="KIDE_form"<?php if (!$this->user->captcha) echo ' style="display:none"'; ?>>
		<div class="nikname">
			<?php echo JText::_("COM_KIDE_NOMBRE"); ?>
			<?php if ($this->user->id) : ?>
			<em id="KIDE_my_name"><?php echo stripslashes($this->user->name); ?></em>
			<?php else : ?>
			<input size="15" minlength="2" type="text" name="KIDE_nuevo_nick" onkeyup="return kide.change_name_keyup(event, this)" onblur="kide.change_name(this)" value="<?php echo stripslashes($this->user->name); ?>" />
			<?php endif; ?>
		</div>
		<?php $this->display('bbcode'); ?>
		<div class="inline">
		<textarea <?php echo $this->maxlength; ?> class="<?php echo KideHelper::getRango($this->user->rango, 'KIDE_dc_'); ?>" id="KIDE_txt" placeholder="сюда песать текст" cols="50" rows="4" name="txt" onkeypress="return kide.pressedEnter(event, false)" onkeydown="kide.check_shift(event, false, false)" onkeyup="kide.check_shift(event, true, false)"></textarea>
		
		<?php if ($this->button_send) : ?>
			<div id="KIDE_button_send" onclick="kide.sm()">
			<img src="/images/send.png" class="animated kbs" id="ksanim" draggable="false">
			<?php echo JText::_("COM_KIDE_SEND"); ?></div>
		<?php endif; ?>
	</div>


из файла: https://noviy-kovcheg.ru/components/....form.hide.php

рони 13.06.2022 22:45

Ubivectel,
нет по вашей ссылке ничего

Ubivectel 13.06.2022 23:03

Так содержимое php файле вроде и не отображается браузером, как быть...

рони 13.06.2022 23:23

Цитата:

Сообщение от Ubivectel
Так содержимое php файле вроде и не отображается браузером, как быть...

бред какой-то ... попытка отобразить неотобразимое ... зачем закачивать с сервера, то чего нет?

Ubivectel 13.06.2022 23:33

Как же тогда правильно сделать, что бы это:

<div id="KIDE_form"<?php if (!$this->user->captcha) echo ' style="display:none"'; ?>>
		<div class="nikname">
			<?php echo JText::_("COM_KIDE_NOMBRE"); ?>
			<?php if ($this->user->id) : ?>
			<em id="KIDE_my_name"><?php echo stripslashes($this->user->name); ?></em>
			<?php else : ?>
			<input size="15" minlength="2" type="text" name="KIDE_nuevo_nick" onkeyup="return kide.change_name_keyup(event, this)" onblur="kide.change_name(this)" value="<?php echo stripslashes($this->user->name); ?>" />
			<?php endif; ?>
		</div>
		<?php $this->display('bbcode'); ?>
		<div class="inline">
		<textarea <?php echo $this->maxlength; ?> class="<?php echo KideHelper::getRango($this->user->rango, 'KIDE_dc_'); ?>" id="KIDE_txt" placeholder="сюда песать текст" cols="50" rows="4" name="txt" onkeypress="return kide.pressedEnter(event, false)" onkeydown="kide.check_shift(event, false, false)" onkeyup="kide.check_shift(event, true, false)"></textarea>
		
		<?php if ($this->button_send) : ?>
			<div id="KIDE_button_send" onclick="kide.sm()">
			<img src="/images/send.png" class="animated kbs" id="ksanim" draggable="false">
			<?php echo JText::_("COM_KIDE_SEND"); ?></div>
		<?php endif; ?>
	</div>


отобразилось в
<div id="form-kide"></div>


только после ввода "xxx" в форму:

<div id="secure" class="level">
    <div class="overlayos" style="display: block;"></div>
    <div class="inlet">
        <form>
            <p class="flex">Режим защиты от спама
                <input id="pass-kide" type="text" name="" value="">
				<input id="pass-btn" type="submit" value="Ok">
            </p>
        </form>
    </div> 
</div>


Как-то же возможно наверное?

рони 13.06.2022 23:42

Цитата:

Сообщение от Ubivectel
Как-то же возможно наверное?

чем код из #6 не устроил?

voraa 13.06.2022 23:43

Цитата:

Сообщение от Ubivectel
Как же тогда правильно сделать, что бы это:
...
отобразилось в

А "это" где находится? Существует в каком то файле на сервере? В каком?
Или просто строка текста?

Ubivectel 13.06.2022 23:48

Сейчас прописал его, вот как себя ведет:

https://noviy-kovcheg.ru/smoking

рони 13.06.2022 23:50

Ubivectel,
я пас, лимит вангирования исчерпан.


Часовой пояс GMT +3, время: 04:51.