Forum Webscript.Ru

Программирование => PHP => Тема начата: Snoooppy от 22 Сентября 2008, 16:10:26

Название: PHP скрипт, запрос в MySQL
Отправлено: Snoooppy от 22 Сентября 2008, 16:10:26
Доброго времени суток уважаемые форумчане!
Сори за возможно элементарный вопрос, но поиск по инету ничего не дал Огорчение
Собсвенно описываю трабл...

Есть база на mySQL следующего содержания:
Таблица отделов (id, depname)
Таблица должностей (id, position)
Таблица пользователей (id, lname, fname, mname, depid, posid, iphone, ephone)

Есть сайт где все это должно отображаться в виде:
ComboBox с названиями отделов
Таблица с данными на пользователей из текущего отдела выбранного в ComboBox-е

Так вот, все это я сделал на PHP кроме одного, не могу понять как сделать чтобы при выборе в ComboBox-е отдела автоматом перерисовывалась таблица пользователей...
Собственно текст скрипта:

ini_set(\'display_errors\',1);
error_reporting(E_ALL);
$host = "localhost";
$user = "vasy";
$password = "111";
$db = "users_data";
if (!mysql_connect($host, $user, $password))
{
echo "

MySQL Error!

";
exit;
}
mysql_select_db($db);
mysql_query ("set character_set_client=\'cp1251\'");
mysql_query ("set character_set_results=\'cp1251\'");
mysql_query ("set collation_connection=\'cp1251_general_ci\'");
$q = mysql_query ("SELECT * FROM department");
print \'
\';
print \'\';
mysql_query ("set character_set_client=\'cp1251\'");
mysql_query ("set character_set_results=\'cp1251\'");
mysql_query ("set collation_connection=\'cp1251_general_ci\'");
$comb=mysql_query("SELECT employ.lastname, employ.firstname, employ.middlename, position.posname, employ.intphone, employ.extphone FROM employ, position where (employ.posid=position.id) and (employ.depid=1)");
$q=mysql_query("SELECT employ.lastname, employ.firstname, employ.middlename, position.posname, employ.intphone, employ.extphone FROM employ, position where (employ.posid=position.id) and (employ.depid=1)");
// Выводим заголовок таблицы:
$num_results2 = mysql_num_rows($comb);
print "";
print "";
for ($c=0; $c{
print "
";
$f = mysql_fetch_array($q);
print "";
echo "";
}
echo "
ИмяФамилияОтчествоДолжностьВнутренний телефонГородской телефон
$f[lastname]$f[firstname]$f[middlename]$f[posname]$f[intphone]$f[extphone]
";
print \'
\';
?>
 
Если я правильно понял надо передать значение выбора в запрос

$q=mysql_query("SELECT employ.lastname, employ.firstname, employ.middlename, position.posname, employ.intphone, employ.extphone FROM employ, position where (employ.posid=position.id) and (employ.depid=1)");
 
и подставить вместо 1 в employ.depid=1 но как это сделать не могу въехать...
Название: PHP скрипт, запрос в MySQL
Отправлено: ravshaniy от 23 Сентября 2008, 14:52:29
1.
Цитировать
print \'
\';
print \'\';  



2.В начало скрипта, можно после соединения с бд, добавить:


$id = (isset($_POST[\'cbDep\']) && preg_match("/^\\d+$/", $_POST[\'cbDep\']) ))?$_POST[\'cbDep\']:1;


3.Заменяете employ.depid=1 на employ.depid=$id

4. Вывод таблицы я честно говоря не понял. зачем два запроса ???