Автор Тема: PHP скрипт, запрос в MySQL  (Прочитано 2816 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Snoooppy

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 1
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP скрипт, запрос в MySQL
« : 22 Сентября 2008, 16:10:26 »
Доброго времени суток уважаемые форумчане!
Сори за возможно элементарный вопрос, но поиск по инету ничего не дал Огорчение
Собсвенно описываю трабл...

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

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

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

<?php
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 "<h2>MySQL Error!</h2>";
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 \'<form name=form1>\';
print \'<label>Выберете отдел :</label><select name=cbDep id=select>\';
while($results = mysql_fetch_array($q))
{
print \'<option value="\'.$results[\'id\'].\'">\'.$results[\'depname\'].\'</option>\';
}
print \'</select>\';
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 "<table border=\\"1\\" width=\\"100%\\" bgcolor=\\"#FFFFE1\\">";
print "<tr><td>Имя</td><td>Фамилия</td><td>Отчество</td><td>Должность</td><td>Внутренний телефон</td><td>Городской телефон</td>";
for ($c=0; $c<mysql_num_rows($q); $c++)
{
print "<tr>";
$f = mysql_fetch_array($q);
print "<tr><td>$f[lastname]</td><td>$f[firstname]</td><td>$f[middlename]</td><td>$f[posname]</td><td>$f[intphone]</td><td>$f[extphone]</td>";
echo "</tr>";
}
echo "</table>";
print \'</form>\';
?>

Если я правильно понял надо передать значение выбора в запрос

$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 но как это сделать не могу въехать...

Оффлайн ravshaniy

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 191
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP скрипт, запрос в MySQL
« Ответ #1 : 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. Вывод таблицы я честно говоря не понял. зачем два запроса ???
убили кенни, сволочи

 

Sitemap 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