powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / передача в скрипт команды через Php
5 сообщений из 5, страница 1 из 1
передача в скрипт команды через Php
    #39550999
raven_2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
доброе время суток, коллеги!

мне нужно вывести в список на web-странице фамилии сотрудников в зависимости от должности. при выборе должности из списка запускается скрипт очищает список и начинает заполнять заново
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
theinput = document.getElementById(theinput);  
  var idx = thelist.selectedIndex;
  var content = thelist.options[idx].innerHTML;
  theinput.value = content;
	
  theclear=document.getElementById(theclear); 
  theclear.innerHTML = '';

  var elem=document.createElement("option");  
  elem.innerText="Выберите сотрудника";
  theclear.appendChild(elem);
  theclear.firstChild.nodeValue="Выберите сотрудника";


после добавления значения по умолчанию идет вставка на php подключение к базе данных, передача параметров, выборка данных которые нужно отобразить в списке
для чего я задаю цикл
Код: php
1.
2.
3.
4.
5.
6.
 while($row = sqlsrv_fetch_array($res))
{
		echo "elem=document.createElement('option'); ";
		echo "elem.innerText=".$res['naim']."; ";
		echo "theclear.appendChild(elem);";
}


но данные не обновляются хотя сообщения об ошибках не выдает
причем, если закомментировать 2-ю строку цикла

Код: php
1.
2.
3.
4.
5.
6.
 while($row = sqlsrv_fetch_array($res))
{
    echo "elem=document.createElement('option'); ";
/*    echo "elem.innerText=".$row['naim']." ";*/
    echo "theclear.appendChild(elem);";
}


то мне добавляет нужно количество элементов списка.
хотя из без данных

вопрос: как мне расставить знаки препинания?
...
Рейтинг: 0 / 0
передача в скрипт команды через Php
    #39551027
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
raven_2008,

innerText - нестандартное свойство , вместо него надо использовать textContent.

Попробуйте в цикле просто сформировать строку, а потом отправить её через echo, примерно так:
Код: php
1.
2.
3.
4.
5.
$str = '<select>';
while($row = sqlsrv_fetch_array($res)) {
  $str .= '<option>'.$res['naim']; // тег option не надо закрывать
}
echo $str.'</select>';
...
Рейтинг: 0 / 0
передача в скрипт команды через Php
    #39551045
raven_2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
user89,


у меня уже есть список Должностей
отображаемый при загрузке сайта

Код: html
1.
2.
3.
4.
5.
6.
	    
 <select name="thelistDepart"  onChange="comboDepart(this, 'varDepart','comboListFIO')">  
		<option  selected value="Должность"> Должность </option>
		<?php
/*  здесь происходит заполнение списка из таблицы */
                  ?>


пользователь выбрал должность (Менеджер), и желает получить список сотрудников занимающих должность (Менеджер)
для чего нужно очистить список Фамилии (от имеющихся)
и заполнить его заново

т.е. функция comboDepart
Код: javascript
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.
function comboDepart(thelist, theinput, theclear)
{
  theinput = document.getElementById(theinput);  

  theclear=document.getElementById(theclear); 
  theclear.innerHTML = '';
  <!--   очистили-->	

  var elem=document.createElement("option");  
  elem.innerText="ФИО";
  theclear.appendChild(elem);
  theclear.firstChild.nodeValue="ФИО";
  <!--   поставили значение по умолчанию -->		

  <?php
	 <!--   и заполняем заново-->	
	if ($res = sqlsrv_query($conn,$tsql,$params)) 
	{   } 
	else
	{ 
	 	echo "Statement could not be prepared.\n";
      		die( print_r( sqlsrv_errors(), true));
	}
	while($row = sqlsrv_fetch_array($res))
	{
		echo "elem=document.createElement('option'); ";
		echo "elem.innerText=".$res['naim']."; ";  /*  вот на эту строку ругается, некорректные кавычки */
		echo "theclear.appendChild(elem);";
	}
	sqlsrv_free_stmt( $res);
	sqlsrv_close( $conn);
   ?>
  
}



а список уже есть
выводит его заново - он "съедет" с места
...
Рейтинг: 0 / 0
передача в скрипт команды через Php
    #39551160
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно просто вывести на экран браузера, посмотреть что там вообще передается
Код: php
1.
echo "elem.innerText=", $res['naim'], "; ";


raven_2008
Код: php
1.
echo "elem.innerText=".$res['naim']."; ";  /*  вот на эту строку ругается, некорректные кавычки */

А c такими кавычками прокатит?
Код: php
1.
echo 'elem.textContent = "' .$res['naim']. '"; ';
...
Рейтинг: 0 / 0
передача в скрипт команды через Php
    #39551204
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
echo "elem.innerText=".$res['naim']."; ";  /*  вот на эту строку ругается, некорректные кавычки */


Пишите проще. Меньше всяких ненужных действий - меньше ошибок.

Код: php
1.
echo "elem.innerText='{$res['naim']}';"; 


В данном случае, кстати, все три строчки легко выводятся одним echo.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / передача в скрипт команды через Php
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]