source: trunk/MagicSoft/Mars/datacenter/db/plotinclude.php@ 8402

Last change on this file since 8402 was 8402, checked in by Daniela Dorner, 19 years ago
*** empty log message ***
  • Property svn:executable set to *
File size: 3.8 KB
Line 
1<?php
2
3include("include.php");
4include("magicdefs.php");
5include("db.php");
6
7$tables=array("fSequenceFirst" => "Sequences",
8 "fRunNumber" => "RunData",
9 "fDataSetNumber" => "DataSets");
10
11$prims=array("SequenceNumber" => "fSequenceFirst",
12 "RunNumber" => "fRunNumber",
13 "DataSetNumber" => "fDataSetNumber");
14
15$joins=array("fSequenceFirst" => " LEFT JOIN Star ON Star.fSequenceFirst=Sequences.fSequenceFirst "
16 ."LEFT JOIN Calibration ON Calibration.fSequenceFirst=Sequences.fSequenceFirst",
17 "fRunNumber" => " LEFT JOIN DataCheck ON DataCheck.fRunNumber=RunData.fRunNumber ",
18 "fDataSetNumber" =>" LEFT JOIN Ganymed ON Ganymed.fDataSetNumber=DataSets.fDataSetNumber");
19
20function GetList($host, $user, $pw, $db, $column, $tables)
21{
22 $tab_fSequenceFirst=array("Sequences", "Calibration", "Star");
23 $tab_fRunNumber=array("RunData");
24 $tab_fDataSetNumber=array("DataSets", "Ganymed");
25
26 $table=$tables[$column];
27 foreach(${"tab_".$column} as $tab)
28 {
29 $query="EXPLAIN " . $tab;
30
31 mysql_connect($host, $user, $pw);
32 mysql_select_db($db);
33
34 $result=mysql_query($query);
35
36 while ($row = mysql_fetch_row($result))
37 $list[] = $row[0];
38 }
39 return $list;
40}
41
42function GetQuery($tables, $joins, $set)
43{
44 if (empty($_GET["prim"]))
45 $_GET["prim"]="";
46 $primary=$_GET["prim"];
47 if (empty($primary))
48 return "";
49 if (empty($_GET[$primary."Col"]))
50 $_GET[$primary."Col"]="";
51 $column=$_GET[$primary."Col"];
52 $table=$tables[$primary];
53 if (empty($_GET["primstart"]))
54 $_GET["primstart"]="";
55 $primstart=$_GET["primstart"];
56 if (empty($_GET["primstop"]))
57 $_GET["primstop"]="";
58 $primstop=$_GET["primstop"];
59 if (empty($_GET[$column."Start"]))
60 $_GET[$column."Start"]="";
61 $start1=$_GET[$column."Start"];
62 if (empty($_GET[$column."Stop"]))
63 $_GET[$column."Stop"]="";
64 $stop1=$_GET[$column."Stop"];
65
66 $query="SELECT " . $table . "." . $primary . ", ";
67 if ($column==$primary)
68 $query.=$table . "." . $column;
69 else
70 $query.=$column;
71
72 if ($_GET["plot"]=="val")
73 {
74 if (empty($_GET[$primary."Col2"]))
75 $_GET[$primary."Col2"]="";
76 $column2=$_GET[$primary."Col2"];
77 if (empty($_GET[$column2."Start2"]))
78 $_GET[$column2."Start2"]="";
79 $start2=$_GET[$column2."Start2"];
80 if (empty($_GET[$column2."Stop2"]))
81 $_GET[$column2."Stop2"]="";
82 $stop2=$_GET[$column2."Stop2"];
83
84 if ($column2==$primary)
85 $query.=", " . $table . "." . $column2;
86 else
87 $query.=", " . $column2;
88 }
89 $query.=" FROM " . $table;
90 $query.=$joins[$primary];
91 if (!empty($primstart) && !empty($primstop))
92 $query.=" WHERE " . $table . "." . $primary . " BETWEEN " . $primstart . " AND " . $primstop;
93
94 if (!empty($start1) && !empty($stop1))
95 {
96 if (strpos($query, " WHERE ")==FALSE)
97 $query.=" WHERE " . $column . " BETWEEN " . $start1 . " AND " . $stop1;
98 else
99 $query.=" AND " . $column . " BETWEEN " . $start1 . " AND " . $stop1;
100 }
101
102 if ($_GET["plot"]=="val" && !empty($start2) && !empty($stop2))
103 {
104 if (strpos($query, " WHERE ")==FALSE)
105 $query.=" WHERE " . $column2 . " BETWEEN " . $start2 . " AND " . $stop2;
106 else
107 $query.=" AND " . $column2 . " BETWEEN " . $start2 . " AND " . $stop2;
108 }
109
110 if (!empty($set) && !empty($_GET[$set]))
111 {
112 if (strpos($query, " WHERE ")==FALSE)
113 $query .= " WHERE ";
114 else
115 $query.=" AND ";
116 $query.= $table . "." . $primary . " IN (" . str_replace(" ", ",", $_GET[$set]) . ") ";
117 }
118
119 return $query;
120}
121
122
123?>
Note: See TracBrowser for help on using the repository browser.