Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Создание таблицы по SQL-запросу.

Сообщения:  [1-10]   [11-18] 

 
 автор: Швейк   (01.03.2005 в 09:50)
 
   для: Швейк.   (28.02.2005 в 21:56)
 

Ребята, по совету cheops'a я создам новую тему посвященную этому вопросу. Назову её Глобальная переменная.

С уважением,
Бравый Солдат.

   
 
 автор: Valeri   (01.03.2005 в 02:39)   письмо автору
 
   для: cheops   (28.02.2005 в 22:38)
 

насколько я понял (если правильно) то проблема в том, что на странице есть функция которая уже производит действие с iduser, так же нужна функция которая будет производить с теми же параметрами но другое действие. Если так то ответ такой - делается несколько функций со своими названиями и каждая вызывается по мере необходимости, то есть код будет выглядить примерно так

<?
function user_auth($iduser)
   {
// производим нужные действия
 
; }

function 
user_info($iduser)
   {
// производим нужные действия
 
; }

function 
user_mail($iduser)
   {
// производим нужные действия
 
; }

switch(
$fun_name)
   {
case 
"user_info":
user_info($iduser);
break;

case 
"user_mail":
user_mail($iduser);
break;

default:
user_auth($iduser)
break;
  }
?>


все эти функции расположены к примеру еа странице 1.php, значит ссылка будет выглядить так

<a href="1.php?fun_name=user_mail&iduser=$(какой-то)">Письма</a>

для вызова функции user_info с той же переменной отличие будет только в этом fun_name=user_info
если ссылка будет без указания fun_name, то по умолчанию вызовется функция user_auth

Не знаю про то я ответил или нет.

   
 
 автор: cheops   (28.02.2005 в 22:38)   письмо автору
 
   для: Швейк.   (28.02.2005 в 21:56)
 

Если честно, то не очень понятно, что требуется :( Может примерчик?

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

   
 
 автор: Швейк.   (28.02.2005 в 21:56)
 
   для: Швейк   (21.02.2005 в 14:23)
 

Уф, как-то рано я начинаю победу праздновать...
Одно с места сдвинул, другое навалилось...
В принципе, это могла быть вполне еовая тема, но решил здесь, пока свежо придание....
В общем, теперь проблема в следующем:
на первой странице создается HTML-таблица с перечнем списка персонала.
Имя и фамилия подсвечиваются ссылкой на другую страницу (где планируется привести полную информацию о конкретном человеке). Создание ссылки и переход с первой страницы на другую с передачей переменных в ссылке я освоил.
Но вот теперь - проблема.
Дело в том, что все функции я храню в отдельном файле - так удобнее. Новую функцию, которая выведет на экран полную информацию о конретном человеке собираюсь хранить там же.
А вот как мне передать в эту библиотеку функций значения переменных и гиперссылки? (По сути дела надо толко user ID передать)
Можно, конечно, новую функцию писать не в библиотке, а в странице, которая "знает" значение переменной $user_ID, но хочется по правилам играть...
Не подскажите, как реализовать задуманное?

С уважением,
Бравый Солдат.

   
 
 автор: Швейк   (28.02.2005 в 12:52)
 
   для: Швейк   (21.02.2005 в 14:23)
 

Все решилось!
Я планировал сделать универсальную функцию, которая выводила бы "оригинальные" названия столбцов таблицы, необходимую информацию и гиперссылки.
Но проще оказалось шапку делать вручную, потерял в универсальности, но выиграл в работоспособности :)
Valeri, большое спасибо за идею использовать функцию
mysql_fetch_array вместо mysql_fetch_assoc - они похоже, но твоя оказалась более гибкой!

Cheops, Вам огрмное спасибо за структуру гиперссылки - все теперь предельно ясно.
Что бы не разводить флуд результат выводить сюда не буду, но если ком потребуется - всегда пожалуйста.

Тема может считаться закрытой.

Большое спасибо и с уважением,
Бравый Солдат.

   
 
 автор: cheops   (24.02.2005 в 19:31)   письмо автору
 
   для: Швейк   (24.02.2005 в 12:31)
 

Хм... стоит наверное точно так же писать, только подставить параметры первичного ключа
<?php
  
if ($col=='Порядковый номер'
  { 
    
$output .= "<td><a href=user_info.php?id=$val>$val</a></td>\n"
  }
?>

   
 
 автор: Valeri   (24.02.2005 в 14:34)   письмо автору
 
   для: Швейк   (24.02.2005 в 12:31)
 

по идеи вроде должно так, у тебя $col присвоено значение фамилии, присвой ей значение Uder ID и должно передаться тогда Uder ID

   
 
 автор: Швейк   (24.02.2005 в 12:31)
 
   для: cheops   (21.02.2005 в 22:40)
 

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



function all_apllTable($all_apll_query){
  // по заданному запросу выводит список персонала
  //в виде HTML таблицы
  global $dbConn;
  $output = "";
  $all_apll_query = <<<HERE
     SELECT
              applicants.applID AS 'Порядковый номер',
              applicants.lname AS ' Фамилия',
              applicants.fname AS ' Имя',
              vacancy.description AS ' Претендуемая вакансия',
              bsphere.description AS ' Бизнес-сфера',
              applicants.phone AS 'Телефон'
     FROM     applicants,  vacancy, bsphere
     WHERE    applicants.vacancyID = vacancy.vacancyID
     AND      applicants.bsphereID = bsphere.bsphereID
     ORDER BY applicants.lname

HERE;

$result = mysql_query($all_apll_query, $dbConn);

  $output .= "<table border=1>\n";
  // получаем название столбцов
  $output .= "<tr>\n";
  while ($field = mysql_fetch_field($result))
  {
     $output .= "<th>$field->name</th>\n";
  } 
  $output .= "</tr>\n\n";

  // получаем данные из таблицы как ассоц. массив
  while ($row = mysql_fetch_assoc($result))
  {
    $output .= "<tr>\n";
    //look at each field
    foreach ($row as $col=>$val){
      if ($col=='Фамилия')
      {
        $output .= "<td><a href=user_info.php?variable=$val>$val</a></td>\n";
      } 
      else
      {
        $output .= "  <td>$val</td>\n";
      } 
    } 
    $output .= "</tr>\n\n";
  }

  $output .= "</table>\n";
  return $output;



Как бы вот такая функция. Довольно простая, но ни как не могу передать в гиперссылке значение поля User ID (уникальный первичный ключ).
В данной ситуации в строке

$output .= "<td><a href=user_info.php?variable=$val>$val</a></td>\n";

формируется ссылка на файл user_info.php и в этой ссылке передается переменная variable, которй присваивается значение текущей фамилии, список которых перебирает цикл.

Вопрос
А как передать значение первичного ключа? Каокй командной объяснить, что надо передать не фамилию, а Uder ID данной строки?

С уважением,
Бравый Солдат.

   
 
 автор: Швейк   (22.02.2005 в 10:39)
 
   для: cheops   (22.02.2005 в 02:03)
 

Большое спасибо!
Вы мне очень помогли и все стало на свои места.

С уважением,
Бравый Солдат.

   
 
 автор: cheops   (22.02.2005 в 02:03)   письмо автору
 
   для: Швейк   (22.02.2005 в 00:41)
 

user.php - это имя файла
? - сообщает, что файлу передаются параметры,
name - это имя параметра
$field8 - принимаемое параметром name значение

Возможно вам будет интересно почитать темы, по следующим ссылкам, где параметры в строке запроса обсуждаются более подробно
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=495
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1249
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1474
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=298

   

Сообщения:  [1-10]   [11-18] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования