Перейти к содержимому


Публикации yKa3

29 публикаций создано yKa3 (учитываются публикации только с 26-Апрель 23)



#25694 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 10:18 in Как это сделать

У меня в подтаблице "Работа с заявками" всего 11 записей. Запись(поле) "Действие" является 7 с верху строкой, т.е. как я понимаю 7ой записью. Нужно сделать так, чтобы именно эта седьмая запись передавалась в родительскую таблицу "Заявки"



#25698 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 11:19 in Как это сделать

То, что вы обвели это строки? Вы создали программу для владельцев бизнесов и по большей части это малый бизнес(без своих штатных it-сотрудников), а не для программистов которые будут разбираться в коде и понимать где тут строки, где поля и так далее. Я хочу элементарно сделать, чтобы поле одной таблицы, отображалось в поле другой таблицы и все. И если вам понятно, что пишите вы как человек в этом разбирающийся это не значит что это же понимают люди которые далеки от it-сферы.(А это 90% ваших клиентов)



#25691 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 09:59 in Как это сделать

Само поле Действие в подтаблице является девятой строчкой сверху если вы про это



#25690 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 09:57 in Как это сделать

Немного не понял. Там одно поле типа список и одна строка, в которую менеджер подставляет на выбор одно из нескольких действий: позвонить, отправить письмо, встретится.



#25688 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 07:41 in Как это сделать

Вы можете написать пример такого вычисления? К примеру есть в родительской таблице "main" поле "example" типа список. И есть в подтаблице "second" поле "ex" типа список. Каким вычислением связать этих два поля? Чтобы в родительской таблице "main" выводились данные из подтаблицы "second"



#25703 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 11:47 in Как это сделать

Пример ясен и логика ясна, но так как это реализовано в самой срм не так легко понять и разобраться. Запись нужна всегда самая последняя, т.е. например первое действие было позвонить 15.08.2014, дата должна подставляться 15.08.2014, допустим 15 августа было принято решение встретится 18 августа и была поставлена дата следующего дейтсвия 18.08.2014, следовательно дата в строке должна поменяться на 18.08.2014



#25717 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 16:30 in Как это сделать

Добавил данное вычесление в родительскую таблицу, после сохранения при переходе в Заявки пишет:

Ошибка в вычислении.


Заявки.Отображение поля: След. действие
Заявки.Вычисление След. действие :

1: $data = data_table("Работа по заявке", "`Заявка №`=".$line['id']." ORDER BY `Дата` DESC")
2: $line['f3761'] = $data['Действие'];
3: $line['Исполнить до'] = $data['Дата'];
syntax error, unexpected T_VARIABLE



#25725 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 17:30 in Как это сделать

Еще один момент, а если допустим запись по задачи удаляется, можно как то сделать чтобы и в полях родительской таблицы След.действие и Исполнить до:, данные тоже удалялись. С данной формулой при удалении строк из работы с заявкой в родительской таблице данные не удаляются а остаются прежними или если например сначала поставить одну дату, а потом поставить другую дату, в одной же записи, то в родительской таблице дата не поменяются а останется прежней.



#25724 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 16:57 in Как это сделать

За сложное вычисление я бы заплатил или бы покопался бы неделю сам и разобрался. А говорить в поддержке что это сложное вычисление и просить деньги явно не плюс для такой хорошей срм. Спасибо за помощь.



#25720 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 16:41 in Как это сделать

Говорят оставляйте заявку на доработку программистам и заплатите еще тысяч 5 за это. За три строчки. Круто они работают.



#25719 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 08 Август 2014 - 16:40 in Как это сделать

Работает, спасибо огромное. Не то, что поддержка, которая три дня мне ссылки на примеры давала и говорила, что там очень сложное вычисление и сами мы не можем зайти к вам и сделать его. Все оказывается еще проще чем я думал.



#25665 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 06 Август 2014 - 16:16 in Как это сделать

И если вы говорите что поле не должно как-то автоматически заполняться, то зачем тогда эта справка и вообще что это тогда?

[img][URL=http://hostingkartinok.com/show-image.php?id=830c3bb66de957448b9a7391701e7585][IMG]http://s7.hostingkartinok.com/uploads/thumbs/2014/08/830c3bb66de957448b9a7391701e7585.png[/IMG][/URL][/img]



#25664 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 06 Август 2014 - 16:10 in Как это сделать

Для первого вычисления берем из подтаблицы "Работа по заявкам" запись поля Действие
Для второго вычисления берем из подтаблицы "Работа по заявкам" запись поля Дата

Пробовал вычисление:
$line['След.действие']=$line['Действие']; результата нет



#25626 Связывает таблицу и подтаблицу

Отправлено от yKa3 в 05 Август 2014 - 18:04 in Как это сделать

Есть таблица Заявки и Подтаблица Работа по Заявке. В подтаблице есть два поля: Действие, Дата. Необходимо сделать так чтобы эти два поля отображались в родительской таблице Заявки.

Создал в родительской таблице два новых поля: След.действие, Исполнить до: и создал связь в настройках полей с полями Действие и Дата подтаблицы Работа по заявке. Результата нет. Что делаю не так?



#25557 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 17:11 in Как это сделать

Тогда зачем были добавлены на сайте КБ? Они по сути только для внешних форм и необходимо. Пробую через вычисления.



#25555 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 17:05 in Как это сделать

Спасибо, сейчас пытаюсь сделать с помощью масок которые КБ предлагает, в таблице заявки>e-mail вставил нужный шаблон [а-я,a-z,0-9]1-10[@]1[а-я,a-z,0-9]1-10[.]1C2-3 а код яваскрипта даже не поменялся в форме. Это ошибка или я что то не так делаю?



#25547 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 14:38 in Как это сделать

Нужно, чтобы поле внешней формы e-mail имело проверку по типу как в php.

Что-то наподобе:

<?php
function is_email($email) {
if (! preg_match( '/^[A-Za-z0-9!#$%&\'*+-/=?^_`{|}~]+@[A-Za-z0-9-]+(\.[A-Za-z0-9-]+)+[A-Za-z]$/', $email)) {
return false;
} else {
return true;}
}
if (is_email($email)) echo "E-mail правильный";
else echo "Введите правильный e-mail";
?>
Пытался подключить, но не вышло. Знаний в программировании нет, изучаю только неделю.



#25559 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 17:20 in Как это сделать

Добавил скрипт вычислений. Работает, НО. Он теперь перекрывает проверку остальных полей на заполнение. Т.е. у меня первое поле имя, второе поле телефон, третье почта. Раньше если клиент не заполнил первое поле, ему сразу алерт вылазил, чтобы он заполнил. А теперь сразу вылазит неккоректный e-mail. Вообще не дело.

Вставил скрипт сразу после проверки на заполнение полей в скрипте.



#25552 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 16:38 in Как это сделать

Вот тыркался в скрипте, так и не получилось. А пшп как подключить? но самое главное как на него ссылку задать? в поле $email прописывает то что у нас в поле id. Верно? Где input type=text id=example. Делал так, результата ноль



#25561 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 17:38 in Как это сделать

Та же ситуация если даже включать скрипт вычисления через настройки КБ в настройках формы. Ошибка или я снова что-то не так делаю?



#25574 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 03 Август 2014 - 15:47 in Как это сделать

Была в таблице уже. Выставил в настройках КБ обязательные поля и добавился в скрипт код:

var qst_input;
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_input_field_10_1690');qst_form.appendChild(qst_input);
qst_input.value=document.getElementById('k_input_field_10_1690').value;
if (!qst_input.value) {alert('Введите пожалуйста свое имя.."'); document.getElementById('k_savebutton10').disabled=''; k_was_submited10=0; return;}
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_input_field_10_1700');qst_form.appendChild(qst_input);
qst_input.value=document.getElementById('k_input_field_10_1700').value;
if (!qst_input.value) {alert('Введите пожалуйста свой телефон. '); document.getElementById('k_savebutton10').disabled=''; k_was_submited10=0; return;}
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_input_field_10_1710');qst_form.appendChild(qst_input);
qst_input.value=document.getElementById('k_input_field_10_1710').value;
if (!qst_input.value) {alert('Введите пожалуйста свой e-mail. "'); document.getElementById('k_savebutton10').disabled=''; k_was_submited10=0; return;}
;
if(k_10_curr_hash != '') {
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','hash');qst_form.appendChild(qst_input);
qst_input.value=k_10_curr_hash;
} else {
if(document.location.href.split('hash=')[1]) {
if(document.location.href.split('hash=')[1].split('.').length>1) {
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','hash');qst_form.appendChild(qst_input);
qst_input.value=document.location.href.split('hash=')[1].split('.')[0];
}
}
}

Вот этот код перестает работать при добавлении вычислений



#25572 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 03 Август 2014 - 14:57 in Как это сделать

Объясню еще раз. У меня в форме три поля. Первое имя. Второе телефон. Третье почта. Так вот без это скрипта идет проверка полей на заполнение. Т.к. если человек нажимает отправить и ничего не вводит, то ему показывается алерт Введите свое имя. Если он ввел Имя а другх два поля оставил, ему вылетает алерт введите телефон. Если он два поля заполнил, а третье оставил ему вылетает алерт введите почту. И так и должно все работать. Тут претензий нет. Но как только я подключаю вычисления по полю почта, то проверка заполнения полей отключается и если человек вообще ничего не ввел в три поля ему вылетает алерт Неккоретный e-mail. Чего само собой быть не должно. Должна работать сначала проверка заполнения полей и когда заполнено уже первых два поля, включаться вычисление на проверку валидности почты.

А такого не происходит не при самостоятельном добавлении вычислений в скрипт, ни при добавлении через Поле Яваскрипт в вычислениях.



#25568 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 03 Август 2014 - 14:31 in Как это сделать

Вставлял вручную с помощью NotePad++ , основной скрипт это скрипт в первом посте. И вставлял в поле Java Script вкладки Вычисления. Результат один и тот же. Сразу пишет "Некорректный e-mail" минуя проверку заполнения других полей.



#25514 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 31 Июль 2014 - 22:18 in Как это сделать

Что необходимо добавить в ява скрипт, который выдает КБ в настройках формы.

Сейчас так:

<script>

var k_form_rand_10=Math.random()+"_"+(new Date()).getTime(); // Уникальный id формы, используется в файлах и для получения ответа анкеты
var k_upload_in_progress=0;
var k_answer_hide_form10=1;
var k_was_submited10=0;
var k_10_curr_hash = '';

function k_save_qst10()
{
k_answer_hide_form10=1;
var page_charset=window.document.charset;
if (!page_charset) page_charset=window.document.characterSet;

if (typeof(custom_save_qst10) == 'function') {
if (!custom_save_qst10()) return ;
}
if (k_was_submited10) return;
k_was_submited10=1;
document.getElementById('k_savebutton10').disabled=true;

var qst_form=document.createElement("form");
qst_form.setAttribute('enctype', 'multipart/form-data');
qst_form.setAttribute('action', 'http://kamin2.clientbase.ru/questionare.php?page_charset='+page_charset+'&ts'+new Date().getTime());
qst_form.setAttribute('target', 'k_frame_upload_10');
qst_form.setAttribute('method', 'post');
document.body.appendChild(qst_form);
var qst_input;
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_input_field_10_1690');qst_form.appendChild(qst_input);
qst_input.value=document.getElementById('k_input_field_10_1690').value;
if (!qst_input.value) {alert('Введите пожалуйста свое имя.."'); document.getElementById('k_savebutton10').disabled=''; k_was_submited10=0; return;}
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_input_field_10_1700');qst_form.appendChild(qst_input);
qst_input.value=document.getElementById('k_input_field_10_1700').value;
if (!qst_input.value) {alert('Введите пожалуйста свой телефон. '); document.getElementById('k_savebutton10').disabled=''; k_was_submited10=0; return;}
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_input_field_10_1710');qst_form.appendChild(qst_input);
qst_input.value=document.getElementById('k_input_field_10_1710').value;
if (!qst_input.value) {alert('Введите пожалуйста свой e-mail. "'); document.getElementById('k_savebutton10').disabled=''; k_was_submited10=0; return;}
;
if(k_10_curr_hash != '') {
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','hash');qst_form.appendChild(qst_input);
qst_input.value=k_10_curr_hash;
} else {
if(document.location.href.split('hash=')[1]) {
if(document.location.href.split('hash=')[1].split('.').length>1) {
qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','hash');qst_form.appendChild(qst_input);
qst_input.value=document.location.href.split('hash=')[1].split('.')[0];
}
}
}

qst_input=document.createElement('input');qst_input.setAttribute('type','hidden');qst_input.setAttribute('name','k_rand_10');qst_form.appendChild(qst_input);
qst_input.value=k_form_rand_10;
qst_form.submit();
document.body.removeChild(qst_form);
};
function k_save_resp10(event)
{
if (document.getElementById('k_frame_upload_10').src=='') return ; // Выходим если загрузки не было

var page_charset=window.document.charset;
if (!page_charset) page_charset=window.document.characterSet;
if (k_upload_in_progress)
{ // Загрузка файлов
var obj=event.target; if (!obj) obj=event.srcElement;
// Убираем значек загрузки
$(".k_upload_progress").removeClass('k_upload_progress_img');
// Необходима проверка - загружен ли файл
for (var i = 0; i < k_upload_files_list.length; i++)
{
var f_name=k_upload_files_list[i].name;
var f_obj =k_upload_files_list[i].obj;
var rnd_sess=Math.floor(Math.random()*10000);
var ss = document.createElement('script');
ss.src="http://kamin2.clientbase.ru/questionare.php?sel=test_upload&qst_id=10&k_rand="+k_form_rand_10+"&k_resp="+rnd_sess+"&f_name="+f_name+"&page_charset="+page_charset;
ss.setAttribute('i_pos',i);
ss.setAttribute('rnd_sess',rnd_sess);
var done = false;
ss.onload=ss.onreadystatechange=function(){
if ( !done && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete") )
{
done = true;
var i=this.getAttribute("i_pos");
var rnd_sess=this.getAttribute("rnd_sess");
var f_name=k_upload_files_list[i].name;
var f_obj =k_upload_files_list[i].obj
var field_id =k_upload_files_list[i].field_id;
eval("var data=k_resp"+rnd_sess+";");
if (data.indexOf(' uploaded.')!=-1)
{
var size = parseInt(data)+"";
size=size.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 ');
// Отображем размер
f_obj.find(".k_upload_progress").html(" - "+size+" B");
}
else
{
f_obj.find(".k_upload_progress").html(" - Провалено");
}
document.getElementById('k_sbmt_file_'+'10'+'_'+field_id).setAttribute('was_upload',1);

ss.onload = ss.onreadystatechange = null;
document.body.removeChild(ss);
}
}
document.body.appendChild(ss);
}
k_upload_in_progress=0;
return ;
}
if (document.getElementById('k_frame_upload_10').getAttribute('second_load'))
{
if (!k_was_submited10) return;
k_was_submited10=0;
document.getElementById('k_savebutton10').style.display='none';
document.getElementById('k_savebutton10').disabled=false;
if (typeof(custom_qst_res10) == 'function') {
custom_qst_res10();
}
else
{
// Получаем результат формы
var ss = document.createElement('script');
ss.src="http://kamin2.clientbase.ru/questionare.php?sel=get_answer&qst_id=10&k_rand="+k_form_rand_10;
var done = false;
ss.onload=ss.onreadystatechange=function(){
if ( !done && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete") )
{
done = true;
eval("var data=k_answer"+10+";delete k_answer"+10+";");
if (data.done !== undefined)
{
if (data.done != ' ')
$('#k_qst_res_10').append(data.done);
document.getElementById('k_savebutton10').style.display='';
}
else if(data.error !== undefined)
{
$('#k_qst_err_res_10').html('');
if (data.error != ' ')
$('#k_qst_err_res_10').append(data.error);
data = false;
k_answer_hide_form10 = 0;
document.getElementById('k_savebutton10').style.display = '';
}
else
{
document.getElementById('k_qst_res_10')
}
if (k_answer_hide_form10)
{
document.getElementById('k_qst_10').style.display='none';
location.href ='thanks-page.php';
}

ss.onload = ss.onreadystatechange = null;
document.body.removeChild(ss);
}
}
document.body.appendChild(ss);
}
document.getElementById('k_frame_upload_10').src=""; // Четвертый уровень защиты от повторной загрузки
}
else
document.getElementById('k_frame_upload_10').setAttribute('second_load',1);
}
$(function(){
if(document.getElementById('k_frame_upload_10').onload == null) {
$('#k_frame_upload_10').on('load', function(event) { k_save_resp10(event); });
}
});
</script>



#25560 Как сделать проверку валидности e-mail во внешней форме

Отправлено от yKa3 в 01 Август 2014 - 17:24 in Как это сделать

Вставил скрипт в отельные теги <script></script> после основного скрипта. Ситуация та же.