Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185

Вызов JS функции из PHP

28.05.2017, 20:22. Показов 1788. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть такая функция в js для рендома высоты объекта

JavaScript
1
2
3
4
5
function pos_rot(min, max) {
    var $pos_rot;
    return Math.floor(Math.random() * (max - min + 1)) + min;
}
$pos_rot = pos_rot(20, 45);
При обновлении страницы рендом постоянно происходит, всё работает

Как в php вызвать эту функцию через кнопку?

В начале php инклюжу js.

PHP
1
2
<INPUT TYPE="button" VALUE="Ещё" NAME="next"
   onClick="pos_rot(this)">
Кнопка появляется, при нажатии не ругается, но ни чего не происходит. Мозги так вспухли, что похоже очевидного не вижу

Или это мне к аяксу идти надо?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.05.2017, 20:22
Ответы с готовыми решениями:

Вызов JavaScript функции внутри php
Всем привет. Есть необходимость вызвать ява функцию внутри пхп. Собственно вот таким кодом я вызываю это дело: if(strstr($_GET,...

Вызов php функции
Здравствуйте! Мне нужно вызвать php-функцию и результат поместить в блок. Функция вызывается, но не передается index.php &lt;div...

Вызов функции PHP из JS
Друзья, подскажите начинающему: Есть функция в PHP: function AddEntry() { session_start(); ...

10
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
28.05.2017, 20:31
Во-первых, PHP здесь вообще не причем.

Здесь HTML JS.
А теперь посмотрим на функцию: pos_rot(min, max)
Туда надо передать два параметра,
два числа (минимальное и максимальное значение).
Теперь смотрим на это:
onClick="pos_rot(this)"
Ничего не заметили?
Передайте вместо одного параметра this два числа.
onClick="pos_rot(2, 6)"
например.
0
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
28.05.2017, 20:45  [ТС]
alexsamos33,
Цитата Сообщение от alexsamos33 Посмотреть сообщение
onClick="pos_rot(2, 6)"
Писал и (min,max) и (2,6). Вообще ни какой реакции. "This" написал тут по привычке
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
28.05.2017, 20:47
Скрипт и кнопка на одной странице?

Консоль браузера лучше бы посмотрели, какие выдает ошибки. F12
0
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
28.05.2017, 20:49  [ТС]
alexsamos33, конечно смотрел. Написал с самого начала, что ни на что не ругается. Так просто кнопка в пустую нажимается и всё. Функцию и инклюдил и на одну страницу вставлял - одна фигня
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
28.05.2017, 20:54
А если переменную var $pos_rot;
вынести за пределы функции?
1
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
28.05.2017, 21:04  [ТС]
alexsamos33,
JavaScript
1
2
3
4
5
function pos_rot(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}
var $pos_rot;
$pos_rot = pos_rot(20, 45);
PHP
1
<input type='button' value='Нажми на меня' onclick='pos_rot(20,40)' />
Безрезультатно
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
28.05.2017, 21:11
Так а что Вы хотите получить? Эта функция же ничего не меняет и не выводит.
Или Вы хотите через JS сделать число и передать в PHP? Тогда каким образом это работает при загрузке? В PHp можно такую же свою функцию сделать. А напрямую переменные передавать не получится.

Опишите лучше полностью (от начала до конца) всю задаччу.

Добавлено через 54 секунды
Если через alert хотя бы вывести, то да, выйдет (покажется) значение этой функции. А так не происходит ничего, правильно.
1
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
28.05.2017, 21:17  [ТС]
Хорошо, по порядку.

qwer.js

JavaScript
1
2
3
4
5
function pos_rot(min, max) {
    var $pos_rot;
    return Math.floor(Math.random() * (max - min + 1)) + min;
}
$pos_rot = pos_rot(20, 45)
qwer.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<body>
<script src="qwer1.js"></script>
<input type='button' value='Нажми на меня' onclick='pos_rot(20,40)' />
 
<script>
window.onload=function()
{
var rot=document.createElement('div');
rot.style.marginLeft=$pos_rot+'px';
}
 
</script>
</body>
Вот в крадце и всё. Ну не считая ещё десяток генерируемых переменных вставленных в десяток других дивов. Но схема такая.
При обновлении страници всё генерируется и дивы изменяются (кстати прикольные моськи получились)) эт хочу генерацию ав сделать)
Но вот как это всё вызвать по кнопке, что бы юзеру не надо было каждый раз f5 тыкать, что бы выбрать понравившуюся аву, а просто кнопочку "сгенерировать" нажимать
0
 Аватар для alexsamos33
669 / 640 / 335
Регистрация: 26.04.2014
Сообщений: 2,122
28.05.2017, 21:40
Ну так правильно же!!!
Загрузка страницы происходит же раньше, чем Вы нажимаете кнопку!!!
Может так попробовать?
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<body>
<script src="qwer1.js"></script>
<input type='button' value='Нажми на меня' onclick='ch_rot();' />
 
<script>
function ch_rot(){
var $pos_rot = pos_rot(20,40);
var rot=document.createElement('div');
rot.style.marginLeft=$pos_rot+'px';
}
window.onload=function()
{
ch_rot();
}
 
</script>
</body>
Добавлено через 3 минуты
Или нужно чтобы div один раз создался и уже для него применялись свойства?

Добавлено через 2 минуты
Если один div и его изменять, то так:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<body>
<script src="qwer1.js"></script>
<input type='button' value='Нажми на меня' onclick='ch_rot();' />
 
<script>
var rot;
function ch_rot(){
var $pos_rot = pos_rot(20,40);
rot.style.marginLeft=$pos_rot+'px';
}
window.onload=function()
{
rot=document.createElement('div');
ch_rot();
}
 
</script>
</body>
А в первом случае каждый раз будет создаваться новый элемент div .
1
3 / 3 / 1
Регистрация: 22.10.2013
Сообщений: 185
29.05.2017, 00:53  [ТС]
Так тоже ни чего не изменятся(

Добавлено через 41 секунду
Сейчас попробую

Добавлено через 1 минуту
alexsamos33, нет. Ни чего не изменяет

Добавлено через 1 минуту
alexsamos33, помоему мы уже потеряли привязку к функции рендома

Добавлено через 53 секунды
Цитата Сообщение от alexsamos33 Посмотреть сообщение
Или нужно чтобы div один раз создался и уже для него применялись свойства?
Да, он создан, а js рендомом только изменяется

Добавлено через 2 минуты
alexsamos33, Если есть время и желание, могу закинуть весь весь скрипт. Его нужно будет только скопировать и вставить в два файла. Может поковыряетесь и поймёте. За одном зацените генерируемые моськи))

Добавлено через 6 минут
alexsamos33, но функции вызвать по кнопке - пол беды)) я вот мозгу ломаю, как привязывать выбранную генерацию к юзеру)) Вот думаю может перерисовать в канвасе, да туда рендом запилить. Из канваса можно хоть вывести всё получившееся изображением. Ну или в БД заливать все эти рендомные занчения и запоминать их для юзера

Добавлено через 2 часа 58 минут
alexsamos33, разобрался, получилось. Спасибо, что старался помочь!!!
Только вот сейчас остро встал второй вопрос) но это уже другая тема))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.05.2017, 00:53
Помогаю со студенческими работами здесь

Вызов js функции в php функции что в js
В общем имеем такое извращение &lt;script&gt; ... document.write(&quot;&lt;?php echo Consultationscalendar::classTD($teacherId) ?&gt;&quot;); ...

Вызов php функции в Smarty
Всем доброго дня! Столкнулся с тем, что не знаю как вызвать php функцию с параметром в Smarty. Функцию без параметра я юзаю так: ...

Вызов javascript функции из php
Как вызвать функцию javascript из php? &lt;SCRIPT LANGUAGE=&quot;JavaScript&quot;&gt; function clear() { parent.document.form.text.value =...

Вызов функции jquery из php
Решил оптимизировать немного код, когда выводил не через php с помощью echo, а обычным html все работало. Подскажите пожалуйста как...

Вызов PHP-функции кнопкой
вызвать функцию кнопкой php? возможно ли? что то я уже столько вариантов перепробовал но никак не вызываеться и можно ли на php как то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru