project virus Ответов: 2

Проблема со списком не удается выбрать несколько значений из базы данных


Я сделал следующее

$dropdown = "<form action='get'><select name='Test' multiple='multiple'>";
while($row = mysql_fetch_assoc($result)) {
$dropdown .= "\r\n<option value='{$row['Test']}'>{$row['Test']}</option>";
}
$dropdown .= "\r\n</select><input type='submit' name='submit' value='submit' /></form>";

теперь я использую
$query2 = "SELECT * FROM tests WHERE id='".$_GET['Test']."'"; 

теперь то, что я должен использовать вместо $_GET['Test']для множественного выбора поля со списком
Помощь будет оценена по достоинству,

спасибо.

2 Ответов

Рейтинг:
19

enhzflep

Конечно, этот код помогает?

Примечание: символы [] в имени элемента select обязательны.
Выбор всех параметров дает результат: (с комбо ниже этого)

1
2
3
4


<?php
    if (isset( $_GET['test']))
    {
        foreach ($_GET['test'] as $selectedOption)
            echo $selectedOption."<br>";
    }
?>

<html>
<head>
</head>
<body>
    <form action='testCombo.php'>
        <select name='test[]' multiple='multiple'>
            <option value='1'>a</option>
            <option value='2'>b</option>
            <option value='3'>c</option>
            <option value='4'>d</option>
        </select>
        <input type='submit' value='submit'/>
    </form>
</body>


project virus

ха, извини, ДНТ понял, что ты хочешь сказать.
Я должен получить значения, используя эти несколько вариантов

enhzflep

Сохраните эту штуку в виде файла и запустите ее. Конечно, вы можете видеть, что все выбранные параметры сообщаются?

Этот код будет извлекать выбранные параметры.
Теперь вам нужно сформулировать новый запрос, используя эту информацию!

$sql = "select * from tests where id='1' or id='2' or id='3' or id='4'"

Вам нужно решить, как построить часть [id='1' или id='2' или id='3' или id='4'] из числа выбранных параметров.

Если вы помещаете результаты $_GET['test'] в массив, вы знаете, сколько элементов у вас есть и сколько раз вам нужно добавить или после каждого оператора id='xx'.

$i=0;
по каждому элементу массива $_GET['тест] как $выбранного элемента параметр
{
$варианты[$я++] = $выбранного элемента параметр;
}

$sql = "select * from Tests where ";
$num = count($options);
for ($i=0; $i<$num-1; $i++)
{
$среда SQL .= услуга "ID='".$варианты[$я]".' Или ";
}
$среда SQL .= услуга "ID='".$варианты[$я]".'";

project virus

что такое $options??

enhzflep

массив для сохранения каждого в <параметр>В ы, которые были выбраны в в <выбрать> элемент.
Он определяется и используется в одной и той же строке.

enhzflep

Вот обновление решения:

<?php
if (isset( $_GET['test']))
{
$i = 0;
по каждому элементу (переменная$_GET['тест'] как $выбранного элемента параметр)
{
$варианты[$я++] = $выбранного элемента параметр;
}

$sql = "select * from Test where ";
$num = count($options);
for ($i=0; $i<$num-1; $i++)
{
$среда SQL .= услуга "ID='".$варианты[$я]".' Или ";
}
$среда SQL .= услуга "ID='".$варианты[$я]".'";

Эхо $SQL-кода . "<br>";
}
?>

<html>
<голова>
</head>
<тело>
<form action='testCombo.php'>
<select name='test[]' multiple='multiple'>
&ЛТ;Параметр Значение='1'&ГТ;а&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра='2'&ГТ;б&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра='3'&ГТ;в&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра='4'&ГТ;г&ЛТ;/вариант&ГТ;
</select>
в <тип входного= "отправить" значение= "отправить" /&ГТ;
</форма>
</body>

Вывод: - выбраны все 4 варианта
выберите * из теста, где id='1' или id='2' или id='3' или id='4'

project virus

нет sql запрос не работает

enhzflep

Хорошо, я вручную запустил тот же запрос в таблице базы данных, содержащей пользователей форума. В этом случае столбец id (userid) является int, а не строкой, как кажется на первый взгляд.

Когда я набираю "select * from users where userid=1 или userid=2", я получаю возвращенные пользователи 1 и 2.

Когда вы говорите "sql-запрос не работает"? Что именно происходит?
Формируется ли строка запроса, но не возвращает результатов?

Распечатали ли вы вычисленную строку на экране перед копированием и вставкой на страницу sql-запроса администратора MySql?

"ни один sql-запрос не работает" - это неудовлетворительный ответ, мой друг. Больше информации Спасибо

project virus

mysql_fetch_array() ожидает, что параметр 1 будет ресурсом - это ошибка

project virus

но мой столбец id строка а не int

enhzflep

Ладно, Хорошо. Я мог бы сказать, что вы использовали строку в качестве своего идентификатора, поэтому я завернул цифры (думаю, у вас будет текст) внутрь символов''.

Теперь это означает, что в построенном вами sql, скорее всего, есть ошибка.

Следующий шаг-вывести строку sql-запроса на экран. Затем скопируйте его в окно SQL-запроса администратора MySql и попробуйте выполнить его там. Вы должны получить лучшее сообщение об ошибке там, чем на вашей веб-странице.

Другой трюк заключается в том, чтобы сформулировать свой запрос в этом окне, убедиться, что он правильный и возвращает ожидаемые результаты. Как только это будет сделано, напишите PHP, который построит эту строку запроса.

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

project virus

У меня есть вот это
$res1=mysql_query("выберите отличное время из импорта, где date1='$_POST[date]'");

while($row= mysql_fetch_array($res1))
{
эхо "в<параметр&ГТ;".$строки['время']".&ЛТ;/вариант&ГТ;";

}

echo "</select>";
?>
     в <тип входного="отправить" название="отправить" значение="найти" /&ГТ;
$результат=mysql_query("выбрать различные даты,mobno,город,состояние,тип,telecaller от импортных, где времени на ('$_POST, где[select2]]') или дата1='$_POST, где[дата]'") или умереть(mysql_error());
//$результат2=mysql_query("выберите ID,дата,mobno,состояние,тип,telecaller из temp1, где дата='$_POST, где[выбрать] или telecaller='$_POST, где[select1]\р' ") или умереть(mysql_error());
print"<div id='print'>";
print"<center>список мобильных номеров для даты <font color="#FF00FF"> & lt;u> $_POST[date]< / u> </font> <center> <br/>";
print"<table border='1' cellspacing='5' cellpadding='12'>
<tr bgcolor='#82CAFF'>
в <ом>У старшего нет&ЛТ;/й&ГТ;
в <ом&ГТ;дата&ЛТ;/й&ГТ;
в <ом>мобильный нет&ЛТ;/й&ГТ;
в <ом>В городе&ЛТ;/й&ГТ;
в <ом>в состоянии&ЛТ;/й&ГТ;
<th>тип</th>
<th>CIExe.</th>
</tr>";


$srno1=0;

while($row=mysql_fetch_array($result))
{
$srno1=$srno1+1;
печать"<tr>";
выведите"<td>" .$srno1. "</td>";
выведите"<td>". $row['дата'] . "</td>";
выведите"<td>". $row['mobno'] . "</td>";
выведите"<td>". $row['city'] . "</td>";
выведите"<td>". $row['state'] . "</td>";
выведите"<td>". $row['type'] . "</td>";
выведите"<td>". $row['telecaller'] . "</td>";
печать"</tr>";
}
печать"</Таблица>";
печать"</div>";
Эхо"<br/>";
В приведенном выше кодировании время имеет несколько значений.

enhzflep

Это действительно слишком трудно сказать по тому коду, который вы вставили.
Если вы можете, экспортируйте таблицу SQL из PhpMyAdmin в текстовый файл. Тогда вставьте это сюда.

Это позволит мне создать таблицу с одинаковыми именами/типами столбцов. Это также даст мне некоторые данные для использования.

Просто экспортируйте таблицу "импорт" - мне не нужно много данных - просто первых 5 строк будет достаточно.

1) Откройте localhost/phpmyadmin
2) введите свое имя пользователя MySQL и пароль
3) в левой части экрана выберите базу данных, содержащую таблицу "импорт".
4) в левой части экрана выберите таблицу "импорт"
5) в верхней части экрана выберите вкладку "экспорт"
6) в нижней части экрана установите "Dump" на 10, оставьте "Starting at" на 0
7) нажмите GO в правом нижнем углу экрана
8) Откройте экспортированный файл (import.sql?) в текстовом редакторе.
9) копия
10) вставьте в эту нить
:)

project virus

(`идентификатор`, `срно`, `дата`, `mobno`, `город`, `государство`, `тип`, `telecaller`, `дата1`, `время`) значения
(0, 11, '27-Jul-2012', 9920050727, ", 'Maharashtra', 'ADMIN', 'Sitara\r', '7-Aug-2012', '12:49.PM'),
(0, 12, '27-Jul-2012', 9908606607, ", 'Andhra Pradesh', 'ADMIN', 'Sitara\r', '7-Aug-2012', '12:49.PM'),
(0, 13, '27-Jul-2012', 8891781257, ", 'Kerala', 'ADMIN', 'Snehal\r', '7-Aug-2012', '12:49.PM'),
(0, 14, '27-Jul-2012', 8291005163, ", 'Maharashtra', 'ADMIN', 'Sitara\r', '7-Aug-2012', '12:49.PM'),
(0, 15, '27-Jul-2012', 9722457600, ", 'Gujrat', 'ADMIN', 'Sitara\r', '7-Aug-2012', '12:49.PM'),
(0, 16, '27-Jul-2012', 8291495166, ", 'Maharashtra', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM'),
(0, 17, '27-июля-2012', 9432014057, ", 'Западная Бенгалия', 'админ', 'Anuja\Р', '7-августа-2012', '12:49.ПМ'),
(0, 18, '27-Jul-2012', 9421165840, ", 'Maharashtra', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM'),
(0, 19, '27-Jul-2012', 8904264089, ", 'Karnataka', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM'),
(0, 20, '27-Jul-2012', 8087863141, ", 'Maharashtra', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM');

enhzflep

Я посмотрю, что можно сделать. Обычно файл будет содержать гораздо больше, чем это.
То есть нет никаких указаний на структуру таблицы - вы отрезали первые две строки.
Кроме того, я бы предположил, что id должен иметь флаг AUTO_INCREMENT на нем - все они должны быть уникальными.
Я сейчас посмотрю.
Что касается "\r" - an не может видеть, не видя инструкции insert sql. Он был вставлен в таблицу sql при добавлении каждой записи.

project virus

еще один ке.почему \Р идет перед названием telecaller как Ситара\Р'

Рейтинг:
11

enhzflep

Ну ладно. Давайте посмотрим, что у нас тут есть.
Я думаю, что вы должны быть в состоянии решить его отсюда.

Вот файл import.sql, который я экспортировал

-- phpMyAdmin SQL Dump
-- version 3.2.4
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Aug 13, 2012 at 10:43 PM
-- Server version: 5.1.41
-- PHP Version: 5.3.1

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `test`
--

-- --------------------------------------------------------

--
-- Table structure for table `import`
--

CREATE TABLE IF NOT EXISTS `import` (
  `id` int(11) NOT NULL,
  `srno` int(11) NOT NULL,
  `date` varchar(64) NOT NULL,
  `mobno` int(11) NOT NULL,
  `city` varchar(64) NOT NULL,
  `state` varchar(64) NOT NULL,
  `type` varchar(64) NOT NULL,
  `telecaller` varchar(64) NOT NULL,
  `date1` varchar(64) NOT NULL,
  `time` varchar(64) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Dumping data for table `import`
--

INSERT INTO `import` (`id`, `srno`, `date`, `mobno`, `city`, `state`, `type`, `telecaller`, `date1`, `time`) VALUES
(0, 11, '27-Jul-2012', 2147483647, '', 'Maharashtra', 'ADMIN', 'Sitara', '7-Aug-2012', '12:48.PM'),
(0, 12, '27-Jul-2012', 2147483647, '', 'Andhra Pradesh', 'ADMIN', 'Sitara\r', '7-Aug-2012', '12:49.PM'),
(0, 13, '27-Jul-2012', 2147483647, '', 'Kerala', 'ADMIN', 'Snehal\r', '7-Aug-2012', '12:49.PM'),
(0, 14, '27-Jul-2012', 2147483647, '', 'Maharashtra', 'ADMIN', 'Sitara\r', '7-Aug-2012', '12:49.PM'),
(0, 15, '27-Jul-2012', 2147483647, '', 'Gujrat', 'ADMIN', 'Sitara', '7-Aug-2012', '12:40.PM'),
(0, 16, '27-Jul-2012', 2147483647, '', 'Maharashtra', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM'),
(0, 17, '27-Jul-2012', 2147483647, '', 'West Bengal', 'ADMIN', 'Anuja', '7-Aug-2012', '12:39.PM'),
(0, 18, '27-Jul-2012', 2147483647, '', 'Maharashtra', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM'),
(0, 19, '27-Jul-2012', 2147483647, '', 'Karnataka', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM'),
(0, 20, '27-Jul-2012', 2147483647, '', 'Maharashtra', 'ADMIN', 'Anuja\r', '7-Aug-2012', '12:49.PM');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;



Вот тестовый php - файл, который я использую (sqlTest.php):
<?php

	// step 1 - establish connection to MySql
	$server = 'localhost';
	$user = '** YOUR USERNAME HERE **';
	$password = '** YOUR PASSWORD HERE **';
	$dbLink = mysql_connect($server, $user, $password);  
	if (!$dbLink) 
		die('Can\'t establish a connection to the database: ' . mysql_error());  
  
	$dbSelected = mysql_select_db('test', $dbLink);  
		if (!$dbSelected) die ('We\'re connected, but can\'t use the table: ' . mysql_error());  


	// step 2 - output a <select> list containing all of the distinct times of day
	echo "<form action='sqlTest.php'>";
	echo "<select name='test[]' multiple='multiple'>";
		$sql = "SELECT DISTINCT time FROM import ORDER BY time asc";
		$res1=mysql_query($sql);
		while($row=  mysql_fetch_array($res1))
		{
			echo "<option value='". $row['time'] . "'>".$row['time']."</option>";
		}
		echo "</select>";
		echo"<input type='submit' value='submit'/>";
	echo"</form>";


	// step 3 - if the form has been submitted, extract the selected times (times come from table just above on line 13)
	if (isset($_GET['test']))
	{
		// step 3 - create sql statement to include the times that were selected.
		
		$i = 0;
		foreach ($_GET['test'] as $selectedOption)
			{
				$options[$i++] = $selectedOption;
			}

		$sql = "select DISTINCT date,mobno,city,state,type,telecaller,time FROM import WHERE time IN(";
		$num = count($options);
		for ($i=0; $i<$num-1; $i++)
		{
			$sql .= "'".$options[$i]."', ";
		}
		$sql .= "'".$options[$i]."')";
		$sql .= "OR date1='01/01/0000'";
		echo $sql . "<br>";		


		$result = mysql_query($sql);

		print "<div id='print'>";
		print "<center>List of Mobile Numbers for Date <font color='#FF00FF'>";

		// TODO:
		// need to add the selected dates here
		print "<u>01/01/000</u></font> or Time <font color='#FF00FF'>";
		
		// TODO:
		// need to add the selected times here
		print "<u>12:49.PM</u></font> <center> <br/>";
		
		print "<table border='1'  cellspacing='5' cellpadding='12'>";
		print "<tr  bgcolor='#82CAFF'>";
		print "<th>Sr.No</th>";
		print "<th>Date</th>";
		print "<th>Mobile No</th>";
		print "<th>City</th>";
		print "<th>State</th>";
		print "<th>Type</th>";
		print "<th>CIExe.</th>";
		print "<th>Time</th>";
		print "</tr>";
		
		$srno1=0;
		while($row=mysql_fetch_array($result))
		{
			$srno1=$srno1+1;
			print"<tr>";
				print"<td>" .$srno1. "</td>";
				print"<td>" . $row['date'] . "</td>";
				print"<td>" . $row['mobno'] . "</td>";
				print"<td>" . $row['city'] . "</td>";
				print"<td>" . $row['state'] . "</td>";
				print"<td>" . $row['type'] . "</td>";
				print"<td>" . $row['telecaller'] . "</td>";
				print"<td>" . $row['time'] . "</td>";
			print"</tr>";
		}
		print"</table>";
		print"</div>";
		echo"<br/>";
	}
?>



Вот результат при первом открытии
<html>
<head>
</head>
<body>
    <form action="sqlTest.php">
    <select name="test[]" multiple="multiple">
        <option value="12:39.PM">12:39.PM</option>
        <option value="12:40.PM">12:40.PM</option>
        <option value="12:48.PM">12:48.PM</option>
        <option value="12:49.PM">12:49.PM</option>
        </select>
    <input type="submit" value="submit">
    </form>
    </body>
</html>


Вот результат, когда выбраны первые 3 варианта:

выбрать различные даты,mobno,город,состояние,тип,telecaller,время от времени, где импорт в('12:39.ПМ', '12:40.ПМ', '12:48.ПМ')или дата1='01/01/0000'
Список мобильных номеров на дату 01/01/000 или время 12:49.PM

Старший Нет Дата Мобильный Нет Город Государство Тип
Сиксе.
Время
1
27 июля 2012 года
2147483647
Махараштра
АДМИНИСТРАТОР
Ситара
12:48.PM
2
27 июля 2012 года
2147483647
Гуджрат
АДМИНИСТРАТОР
Ситара
12:40.PM
3
27 июля 2012 года
2147483647
Западная Бенгалия
АДМИНИСТРАТОР
Ануя
12:39.PM


project virus

почему , установите SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; ?

enhzflep

Не знаю - вероятно, потому, что вы не установили id в auto_increment. Это нормально, что по крайней мере одно поле гарантированно уникально - наиболее нормальным является поле id, это делается путем его автоматического увеличения.
Обратите внимание, что в первом столбце вашей таблицы (html) у вас есть столбец Sr.No - также в вашей (sql) таблице есть столбец srno. Этот столбец sql должен (а) быть auto_increment (б) be3 источником столбца в таблице html. Вы не должны поддерживать переменную в цикле php.

project virus

существует предупреждение Warning: недопустимый аргумент, предоставленный для foreach() в C:\xampp\htdocs\Rank_tele1\systemdate.php в строке 128 выберите DISTINCT date,mobno,city,state,type,telecaller,time FROM import WHERE time IN(")OR date1='11-AUG-2012'

project virus

Решить эту проблему.Готово !! очень очень Спасибо :)

enhzflep

Это нормально - пожалуйста, не удаляйте полезные сообщения об ошибках, я вижу, что вы изменили свой комментарий выше - я изменил его обратно, чтобы он помог кому-нибудь в будущем.

Пожалуйста, примите и оцените мой ответ, если он вам помог. :)

enhzflep

Всегда пожалуйста.
Рад, что смог помочь. :-)

project virus

Но у меня есть еще одна проблема с выборкой данных,
В моем коде.Я должен сначала выбрать дату с помощью Боттона отправки для получения времени,а затем после выбора времени снова я должен нажать кнопку отправки, которая очень раздражает пользователя моего s/w или программы, не могли бы вы сказать мне, как следует получать значения времени с помощью средства выбора даты без кнопки отправки.Нужно ли мне использовать ajax?Вот мой полный код...Пожалуйста, Помогите!!
в <html-код атрибута xmlns="http://www.w3.org/1999/xhtml"&ГТ;&ЛТ;глава&ГТ;
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
в <название&ГТ;&ЛТ;/название&ГТ;
<ссылка отн="стилей" тип="текст/CSS в" с href="стиль.ПТК" СМИ="экран"и GT;
<link rel="таблица стилей" type="text/css" media="all" href="jsDatePick_ltr.min.css" />
&л;тип сценария="текст/яваскрипт" СРЦ="jsDatePick.min.1.3.js"&ГТ;&ЛТ;/скрипт>
<script type="text/javascript">
window.onload = функция(){
новый JsDatePick({
режим использования:2,
цель:"поле ввода",
dateFormat:"%j-%M-%Y"

});
};
функция fnPrintArea()
{
ВАР DocumentContainer = документ.метода getElementById('печать');
var WindowObject = window.open(", "printarea",
"ширина=850,высота=850,топ=200,левая=250,панель инструментов=нет,полосы прокрутки=да,статус=Нет,изменяемый размер=нет");
WindowObject.документ.writeln(DocumentContainer.innerHTML будет);
WindowObject.документ.рядом();
WindowObject.фокус();
WindowObject.печать();
WindowObject.рядом();
};
функция форума -- мошенник(ул.)
{
если (окно.объект XMLHttpRequest)
{// код для IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=новый XMLHttpRequest();
}
еще
{// код для IE6, IE5
xmlhttp=новый ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=функция()
{
если (для xmlhttp.в свойстве readyState==4 &амп;&амп; метод xmlhttp.статус==200)
{
документ.метода getElementById("txtHint").innerHTML будет=метод xmlhttp.responseText;
}
}
для xmlhttp.открытые("вам","systemdate.РНР?ул. inputField="+, правда);
для xmlhttp.отправить();
};
</script>

</head>



<тело>
<div id="main_container">
<div id="заголовок">
<div id="логотип">&ЛТ;ИМГ СРЦ="/import3/изображения/логотипа.ПНГ" АЛТ="" название="" граница="0"&ГТ;</div>

<div id="Меню">
<ul>
<li>Домой</li>
<li>Редактировать</li>
<li>Поиск по CIExe. </li>
<li> Поиск по дате</li>
<li>поменять пароль </li>
<li>Выход из системы</li>
</ul>
</div>
</div>
<br/>

<идентификатор формы="form1" имя="form1" метод="post" действие="#">
Дата: в <тип входного="текст" размер="12" идентификатор="inputField" имя="дата" /&ГТ;&ЛТ;БР /&ГТ;

1 ");
?>
   Название CIExc. :
<select name="select1">
&ЛТ;значение параметра="все"&ГТ;--- все ---&ЛТ;/вариант&ГТ;
</select>
   Время Загрузки Файла :

&ЛТ;выберите имя="select2[]" önclick="форума -- мошенник(это.значение)" несколько="правда"и GT;
&ЛТ;значение параметра=""&ГТ;--- выберите ---&ЛТ;/вариант&ГТ;
".$подряд[время]".&ЛТ;/вариант&ГТ;"."&ЛТ;БР/&ГТ;";
}
echo "</select>";
?>
     в <тип входного="отправить" название="отправить" значение="найти" /&ГТ;
</форма>


<p>

project virus

ajax не работает в этом коде

enhzflep

Да, вам действительно нужно использовать ajax, чтобы действовать подобным образом. То, что я typially сделать, это установить функцию onChange, после чего в первом поле. Эта функция извлекает выбранный параметр перед отправкой его на 2-ю страницу php, которая просто возвращает html для второго поля со списком.

Я только что проснулся - от этого кода у меня сейчас болит голова. Я скоро посмотрю. Я отмечу, что я всегда использую библиотеку ajax, так как она всеобъемлюща и мала - около 4 КБ при сжатии (уменьшении)
Я использую тот, который нашел здесь: http://www.ajaxtoolbox.com/request/source.php

Наряду с этими двумя функциями:

функция myGetAjaxResponse(target, url)
{
AjaxRequest.вам(
{
'url':url-адрес,
'onSuccess':function(req){ target.innerHTML=req.responseText; }
}
);
}


функция myGetAjaxResponseWithCallback(target, url, callbackFunc)
{
AjaxRequest.вам(
{
'url':url-адрес,
'onSuccess':function(req){ target.innerHTML=req.responseText; callbackFunc();}
}
);
}


Вот пример используемого процесса (byId-это моя функция, которая просто вызывает document.getElementById)

функция onDateChange()
{
byId('statBox').innerHTML="";
byId('actCount').innerHTML="";
по ID('actListCont').innerHTML будет = в '<div с классом="progBar2"и GT;загрузки&ЛТ;/дел&ГТ;';
loadActivityList();
}

функция loadActivityList()
{
ВАР день, неделя, адрес, день=по ID("dayList"), его авторы обеспокоены=по ID("weekList");

url = "getActivities.php?dayNum="+dayIn.options.selectedIndex;
url += "&weekNum=" + (weekIn.options.selectedIndex+1);
myGetAjaxResponse(byId("actListHolder"), url);
}

SoMad

Чувак! Вы здесь очень терпеливы. Почти слишком много помощи, но я тоже был на этом пути.
Я заметил, что в последнее время вы приняли несколько решений без единого голоса. Это казалось мне несправедливым.

Сорен Мадсен

enhzflep

Ура, :большие пальцы вверх:

Спасибо, приятель. :)
Саймон.

enhzflep

Вообще-то, сделай это

7х "ура, спасибо товарищу"

:-Д

Это для обучения, как их, так и моего - если бы речь шла о ярмарке, я бы давно ушел...: смех:

SoMad

Добро пожаловать. На самом деле я не считал их, просто оглянулся назад за последний месяц или около того.
Я думаю, что такие большие усилия и решения, принятые ОП, заслуживают хорошего голосования.

Так держать :)

Сорен Мадсен