Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / нужно сделать кнопки которые будут выполнять sql / 14 сообщений из 14, страница 1 из 1
05.06.2014, 13:19
    #38662493
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
есть таблица, в нем есть один столбец у которого три значения. и они повторяются. нужно сделать так чтобы по нажатии на кнопку он группировал эти значения. допустим три значения равны словам: sport, books, job. и эти слова повторяются в таблице. и по нажатии одной кнопки выходят только значения sport. нажать на другую кнопку и выходят значения books. то есть каждому значению по кнопке. могу показать код если понадобится. попробовал group by и order by на кнопку не реагирует. отправляю методом GET. кнопки находятся в форме если что))
...
Рейтинг: 0 / 0
05.06.2014, 13:31
    #38662507
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
а что вы в гет передаете? давайте код свой
...
Рейтинг: 0 / 0
05.06.2014, 13:39
    #38662520
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
SharuPoNemnogu,

в данный момент я кое что с кодом делал))
поймете когда прочтете второй if))
Код: html
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.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
<!DOCTYPE html>
<html>
<title>Таблица</title>
<head>
<link href="css/frombase.css" type="text/css" rel="stylesheet">
<style>

table {
    background-color: #D5EEEE;
	border-collapse:collapse;
	font:400 10pt/19px Arial,'MS Sans Serif','sans-serif';
}
table th {
	background:#4682B4;
	color:#fff;
}
table td, th {
	padding:3px;
	border:1px solid #D3D3D3;
}
.treetable label a{
	cursor:pointer;
	color:#fff;
	font-weight:bold;
	padding-left:16px;
}
.treetable tr {
	display:none;
}
.treetable thead tr {
	display:table-row;
}
.treetable .lev1 {
	background:#6E9ECA;
	display:table-row;
}
input[type="checkbox"]{
	display:none;
}
input + a {
	background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAIAAAAmzuBxAAAACXBIWXMAAAsSAAALEgHS3X78AAAAkElEQVQYlXWOvRWDQAyDv/DYK2wQSro8OkpGuRFcUjJCRmEE0TldCpsjPy9qzj7Jki62Pgh4vnqbbbEWuN+use/PlArwHccWGg780psENGFY6W4YgxZIAM339WmT3m397YYxxn6aASslFfVotYLTT3NwcuTKlFpNR2sdEak4acdKeafPlE2SZ7sw/1BEtX94AXYTVmyR94mPAAAAAElFTkSuQmCC)
	no-repeat 0px 5px;
}
input:checked + a{
	background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAIAAAAmzuBxAAAACXBIWXMAAAsSAAALEgHS3X78AAAAeklEQVQYlX2PsRGDMAxFX3zeK9mAlHRcupSM4hFUUjJCRpI70VHIJr7D8BtJ977+SQ9Zf7isVG16WSQC0/D0OW/FqoBlDFkIVJ2xAhA8sI/NHbcYiFrPfI0fGklKagDx2F4ltdtaM0J9L3dxcVxi+zv62E+MwPs7c60dClRP6iug7wUAAAAASUVORK5CYII=)
	no-repeat 0px 5px;
}
td+td+td {text-align:right;}
</style>
</head>
<body><center><script>
document.getElementById('cmdMakeGroup').disabled = false;
document.getElementById('cmdCollapseAll').disabled = true;
document.getElementById('cmdExpandAll').disabled = true;

function MakeGroupTable () {
	var MyTable = document.getElementById('MyTable');
	var rowCount = MyTable.rows.length;
	var cellCount = MyTable.rows[1].cells.length;
	var idx = 1;
	var CurrentValue = '';

	MyTable.className = 'treetable';

	while (idx < rowCount) {
		if (CurrentValue != MyTable.rows[idx].cells[0].innerHTML) {
			CurrentValue = MyTable.rows[idx].cells[0].innerHTML;
			MyTable.insertRow(idx);
			MyTable.rows[idx].className = 'lev1';
			for (i=0; i < cellCount; i++) {MyTable.rows[idx].insertCell(i);}
			MyTable.rows[idx].cells[0].innerHTML = '<label><input type="checkbox"><a onclick="sh(this)">' + CurrentValue + '</a></label>';			
		} else {
			MyTable.rows[idx].className = 'lev2';
			MyTable.rows[idx].cells[0].innerHTML = '&#160;';
		}
		idx++;
		rowCount = MyTable.rows.length;
	}
	document.getElementById('cmdMakeGroup').disabled = true;
	document.getElementById('cmdCollapseAll').disabled = false;
	document.getElementById('cmdExpandAll').disabled = false;
}

function ResetAll() {
	var cs = document.getElementsByTagName('input');
	for (i=0; i < cs.length; i++) {
		if (cs[i].type == 'checkbox') {
			cs[i].checked = false;
		}
	}
}

function ShowLevel(row,lv) {
	var tBody = row.parentNode;
	var i = row.rowIndex;
	row = tBody.rows[i]; // Попытка перейти к следующей строке
	while (row && row.className.substring(3)*1 > lv) {
		if (row.className.substring(3)*1 == lv+1) {
			row.style.display = 'table-row';
			if ((row.querySelector('td input')) && row.querySelector('td input').checked) {
				ShowLevel(row,lv+1);
			}
		}
		i+=1;
		row = tBody.rows[i];
	}
}

function HideLevel(row,lv) {
	var i = row.rowIndex;
	var tBody = row.parentNode;
	row = tBody.rows[i]; // Попытка перейти к следующей строке
	while (row && row.className.substring(3)*1 > lv) {
		row.style.display = 'none';
		i+=1;
		row = tBody.rows[i];
	}
}

function sh(el) {
	var row = el.parentNode.parentNode.parentNode;
	var lv = row.className.substring(3)*1; // Уровень строки, циферка после 'lev'
	if (row.querySelector('td input').checked) {
		HideLevel(row,lv);
	} else {
		ShowLevel(row,lv);
	}
}

function SwapAll(b) {
	var tbl = document.getElementsByClassName('treetable')[0];
	for (i=1; i < tbl.rows.length; i++) {
		if (tbl.rows[i].className != 'lev1') {
			if (b) {tbl.rows[i].style.display = 'table-row';}
			else {tbl.rows[i].style.display = 'none';}
		}

		if (tbl.rows[i].querySelector('td input')) {tbl.rows[i].querySelector('td input').checked = b;}
	}
}
</script>

<button onclick="MakeGroupTable();" id="cmdMakeGroup">Сгруппировать</button>
<button onclick="SwapAll(false);" id="cmdCollapseAll" disabled>Свернуть все</button>
<button onclick="SwapAll(true);" id="cmdExpandAll" disabled>Развернуть все</button>
<a href="extended1.php"><button >Сгруппировать по дате</button></a>
<br><br>
<table id="MyTable">

<col width=100> <col width=150>
<thead>
	<tr>
    <th>&#160;Номер Счетчика&#160;</th> 
    <th>&#160;ID&#160;</th> 
    <th>&#160; Fields &#160;</th> 
    <th>&#160; Description &#160;<form  method="GET" action ="<?=$_SERVER['PHP_SELF']?>">
                                <button name="terminal" value="">Terminal cover open times</button>


                                <button  name="upper-cover" value="">Upper-cover open times</button>


                                <button name="total-kwh" value="">Current total kWh</button>


                       </form></th> 
    <th>&#160;  <form action="<?=$_SERVER["PHP_SELF"]?>" method="get">
                            Введите дни(от 1 до 30):
                            <input type="text" name="name" value="<?=$_GET["name"]?>"><br></br>
                        <input type = "submit" value = "Считать">
                        <a href="example.php" ><input type = "button" value = "Сброс"></a>
                        </form>&#160;</th>
    <th>&#160; Значение &#160;</th>                     
    </tr>
</thead>
<tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td>
    <td></td>  
    
</tr>



<?php
  $connect = mysql_connect("******", "********", "**********")  or die("Ошибка соединения!");
    mysql_select_db("smartvend", $connect);
  
 
if (isset($_GET["name"]))
{
  $name = $_GET["name"];
  $query ="SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
 FROM
 amr_fields fields, amr_read_history history
 WHERE
 fields.ID=history.FieldName AND ExecDate>= SUBDATE(CURRENT_DATE, INTERVAL $name DAY) 
 ORDER BY MeterNum asc, ExecDate ASC";
}

else {
        $result = mysql_query("SELECT  history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue 
                        FROM  
                            amr_fields fields, amr_read_history history 
                        WHERE 
                            fields.ID=history.FieldName AND ExecDate>= '(CURDATE()'
                            ORDER BY MeterNum asc, execdate DESC",$connect);
                         
        while ($data = mysql_fetch_row($result))
        {
            echo"<tr>";;
             echo"<td>{$data[0]}</td>";
             echo"<td>{$data[1]}</td>";
             echo"<td>{$data[2]}</td>";
             echo"<td>{$data[3]}</td>";
             echo"<td>{$data[4]}</td>";
             echo"<td>{$data[5]}</td>";
             
            echo"</tr>";
            
        }    
        }

 
$sql = mysql_query($query) or die("<p>Введите дни</p>");
 
while ($data = mysql_fetch_row($sql))
{
  echo"<tr>";
  echo"<td>{$data[0]}</td>";  
  echo"<td>{$data[1]}</td>";
  echo"<td>{$data[2]}</td>";
  echo"<td>{$data[3]}</td>";
  echo"<td>{$data[4]}</td>";
  echo"<td>{$data[5]}</td>";
  echo"</tr>";
}

  if (isset($_GET["terminal"]))
{
  $name = $_GET["terminal"];
  $query ="SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
 FROM
 amr_fields fields, amr_read_history history
 WHERE
 `fields.description` = 'Terminal cover open times'  
 ORDER BY Description asc, ExecDate ASC";
}

else {
        $result = mysql_query("SELECT  history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue 
                        FROM  
                            amr_fields fields, amr_read_history history 
                        WHERE 
                            fields.ID=history.FieldName AND ExecDate>= '(CURDATE()'
                            ORDER BY MeterNum asc, execdate DESC",$connect);
                         
        while ($data = mysql_fetch_row($result))
        {
            echo"<tr>";;
             echo"<td>{$data[0]}</td>";
             echo"<td>{$data[1]}</td>";
             echo"<td>{$data[2]}</td>";
             echo"<td>{$data[3]}</td>";
             echo"<td>{$data[4]}</td>";
             echo"<td>{$data[5]}</td>";
            echo"</tr>";
            
        }    
        }

mysql_close();
    ?>
</table>

</center>

</body>
</html>

...
Рейтинг: 0 / 0
05.06.2014, 13:51
    #38662545
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
Зачем же было кидать все полотно не связанное с задачей. И что то я не нашел в этой каше трех кнопок "sport, books, job"

Если я правильно понял, суть примерно такая:
Код: html
1.
2.
3.
<input type="button" name="blabla" value="sport"></button>
<input type="button" name="blabla" value="books"></button>
<input type="button" name="blabla" value="job"></button>



Код: php
1.
2.
3.
4.
5.
6.
$where = '';
if (isset($_GET['blabla']) {
    $where = ' AND pole = '.$_GET['blabla'];

SELECT .... WHERE <условия> $where ORDER ...
}
...
Рейтинг: 0 / 0
05.06.2014, 13:51
    #38662547
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
ой с html накосячил, ну да ладно)
...
Рейтинг: 0 / 0
05.06.2014, 13:58
    #38662559
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
SharuPoNemnogu,

)))
вот кнопки:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<th>&#160; Description &#160;<form  method="GET" action ="<?=$_SERVER['PHP_SELF']?>">
                                <button name="terminal" value="">Terminal cover open times</button>


                                <button  name="upper-cover" value="">Upper-cover open times</button>


                                <button name="total-kwh" value="">Current total kWh</button>


                       </form></th> 



и при таком запросе:

Код: php
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.
29.
30.
31.
32.
if (isset($_GET["terminal"]))
{
  $name = $_GET["terminal"];
  $query ="SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
 FROM
 amr_fields fields, amr_read_history history
 WHERE
 `fields.description` = 'Terminal cover open times'  
 ORDER BY Description asc, ExecDate ASC";
}

else {
        $result = mysql_query("SELECT  history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue 
                        FROM  
                            amr_fields fields, amr_read_history history 
                        WHERE 
                            fields.ID=history.FieldName AND ExecDate>= '(CURDATE()'
                            ORDER BY MeterNum asc, execdate DESC",$connect);
                         
        while ($data = mysql_fetch_row($result))
        {
            echo"<tr>";;
             echo"<td>{$data[0]}</td>";
             echo"<td>{$data[1]}</td>";
             echo"<td>{$data[2]}</td>";
             echo"<td>{$data[3]}</td>";
             echo"<td>{$data[4]}</td>";
             echo"<td>{$data[5]}</td>";
            echo"</tr>";
            
        }    
        }

чо то он не реагирует. кнопка нажимается но не "дышит"(
...
Рейтинг: 0 / 0
05.06.2014, 14:07
    #38662569
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
PHucker,

Код: php
1.
2.
3.
if (isset($_GET["terminal"]))
{
  $name = $_GET["terminal"];


ну а где в запросе используется $name ?
...
Рейтинг: 0 / 0
05.06.2014, 14:14
    #38662581
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
SharuPoNemnogu,

нигде, сам только что убрал. хотел написать сюда. можно его стереть. я просто if копировал, вместе с ним оказца остался :D
...
Рейтинг: 0 / 0
05.06.2014, 14:28
    #38662603
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
не понимаю в чем проблема. почему не работает? что-то я упустил?
...
Рейтинг: 0 / 0
05.06.2014, 14:35
    #38662617
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
Я же написал выше принцип действия. И вообще код ужасный)
...
Рейтинг: 0 / 0
05.06.2014, 14:38
    #38662622
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
SharuPoNemnogu,

признаюсь)) там кавардак и бардак. глаза краснеют когда я смотрю на код)) может немного шире напишете тот код который вы уже написали? я еще слабоват
...
Рейтинг: 0 / 0
05.06.2014, 14:45
    #38662640
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
замените
Код: html
1.
 <button name="terminal" value="">Terminal cover open times</button>


на
Код: html
1.
 <input type="submit" name="terminal" value="Terminal cover open times" />
...
Рейтинг: 0 / 0
05.06.2014, 14:50
    #38662652
PHucker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
SharuPoNemnogu,

не заработало(

может здесь что-то не так?

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
if (isset($_GET["terminal"]))
{
  $query ="SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
 FROM
 amr_fields fields, amr_read_history history
 WHERE
 Description = 'Terminal cover open times'  
 ORDER BY Description asc, ExecDate ASC";
}
...
Рейтинг: 0 / 0
05.06.2014, 15:00
    #38662670
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
нужно сделать кнопки которые будут выполнять sql
PHucker,
А кнопку ту нажимаешь не считать которая?
ну во первых проверь заходит ли вообще сюда
Код: php
1.
2.
 if (isset($_GET["terminal"]))
{ die('Зашло');


а во вторых даже если заходит, $query ты определяешь, а сам запрос где делается? разберись с условиями и что когда должно выполняться
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / нужно сделать кнопки которые будут выполнять sql / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]