PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (2): [1] 2 »

> Найдено сообщений: 25
PHucker Отправлено: 24 Июня, 2014 - 13:16:18 • Тема: Include в div'е • Форум: HTML, Дизайн & CSS

Ответов: 0
Просмотров: 661
Здравствуйте! Подскажите пожалуйста. У меня шаблон готов. И я специально оставил один <div></div> для Include'а. Попробовал сделать так:
PHP:
скопировать код в буфер обмена
  1. <div><? include 'news.php';?></div>
почему-то не работает. Этот div будет менять содержимое при нажатии на ссылки. Потом попробовал с этим:
CODE (html):
скопировать код в буфер обмена
  1. <!--#include virtual="includes/news.txt"-->
это работает, но почему-то с CSS не связывается и только текст выводится. Хотя CSS у меня подключен. А вообще можно так сделать как я хочу? Поместить внутри div'а include и при нажатии на ссылки только в div'е будут открываться ссылки. А остальное не будет "шевелиться".
PHucker Отправлено: 05 Июня, 2014 - 12:14:00 • Тема: нужно сделать кнопки которые будут выполнять sql запрос • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 812
есть таблица, в нем есть один столбец у которого три значения. и они повторяются. нужно сделать так чтобы по нажатии на кнопку он группировал эти значения. допустим три значения равны словам: sport, books, job. и эти слова повторяются в таблице. и по нажатии одной кнопки выходят только значения sport. нажать на другую кнопку и выходят значения books. то есть каждому значению по кнопке. могу показать код если понадобится. попробовал group by и order by на кнопку не реагирует. отправляю методом GET. кнопки находятся в форме если что))
PHucker Отправлено: 30 Мая, 2014 - 10:19:01 • Тема: Здравствуйте! Помогите с такой проблемой: есть таблица в которой можно свернуть\развернуть строки. И вот когда разворачиваю работает, а обратно свернуть не могу. Для того чтобы было понятно выложу весь код: • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 869
SOS!!! Есть кто?
PHucker Отправлено: 30 Мая, 2014 - 05:45:17 • Тема: Здравствуйте! Помогите с такой проблемой: есть таблица в которой можно свернуть\развернуть строки. И вот когда разворачиваю работает, а обратно свернуть не могу. Для того чтобы было понятно выложу весь код: • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 869
Здравствуйте!
Помогите с такой проблемой: есть таблица в которой можно свернуть\развернуть строки.
И вот когда разворачиваю работает, а обратно свернуть не могу. Для того чтобы было понятно выложу весь код:

CODE (css):
скопировать код в буфер обмена
  1.  
  2. table {
  3. background-color: #D5EEEE;
  4. border-collapse:collapse;
  5. font:400 10pt/19px Arial,'MS Sans Serif','sans-serif';
  6. }
  7. table th {
  8. background:#4682B4;
  9. color:#fff;
  10. }
  11. table td, th {
  12. padding:3px;
  13. border:1px solid #D3D3D3;
  14. }
  15. .treetable label a{
  16. cursor:pointer;
  17. color:#fff;
  18. font-weight:bold;
  19. padding-left:16px;
  20. }
  21. .treetable tr {
  22. display:none;
  23. }
  24. .treetable thead tr {
  25. display:table-row;
  26. }
  27. .treetable .lev1 {
  28. background:#6E9ECA;
  29. display:table-row;
  30. }
  31. input[type="checkbox"]{
  32. display:none;
  33. }
  34. input + a {
  35. background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAIAAAAmzuBxAAAACXBIWXMAAAsSAAALEgHS3X78AAAAkElEQVQYlXWOvRWDQAyDv/DYK2wQSro8OkpGuRFcUjJCRmEE0TldCpsjPy9qzj7Jki62Pgh4vnqbbbEWuN+use/PlArwHccWGg780psENGFY6W4YgxZIAM339WmT3m397YYxxn6aASslFfVotYLTT3NwcuTKlFpNR2sdEak4acdKeafPlE2SZ7sw/1BEtX94AXYTVmyR94mPAAAAAElFTkSuQmCC)
  36. no-repeat 0px 5px;
  37. }
  38. input:checked + a{
  39. background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAIAAAAmzuBxAAAACXBIWXMAAAsSAAALEgHS3X78AAAAeklEQVQYlX2PsRGDMAxFX3zeK9mAlHRcupSM4hFUUjJCRpI70VHIJr7D8BtJ977+SQ9Zf7isVG16WSQC0/D0OW/FqoBlDFkIVJ2xAhA8sI/NHbcYiFrPfI0fGklKagDx2F4ltdtaM0J9L3dxcVxi+zv62E+MwPs7c60dClRP6iug7wUAAAAASUVORK5CYII=)
  40. no-repeat 0px 5px;
  41. }
  42. td+td+td {text-align:right;}
  43.  


CODE (javascript):
скопировать код в буфер обмена
  1. document.getElementById('cmdMakeGroup').disabled = false;
  2. document.getElementById('cmdCollapseAll').disabled = true;
  3. document.getElementById('cmdExpandAll').disabled = true;
  4.  
  5. function MakeGroupTable () {
  6. var MyTable = document.getElementById('MyTable');
  7. var rowCount = MyTable.rows.length;
  8. var cellCount = MyTable.rows[1].cells.length;
  9. var idx = 1;
  10. var CurrentValue = '';
  11.  
  12. MyTable.className = 'treetable';
  13.  
  14. while (idx < rowCount) {
  15. if (CurrentValue != MyTable.rows[idx].cells[0].innerHTML) {
  16. CurrentValue = MyTable.rows[idx].cells[0].innerHTML;
  17. MyTable.insertRow(idx);
  18. MyTable.rows[idx].className = 'lev1';
  19. for (i=0; i < cellCount; i++) {MyTable.rows[idx].insertCell(i);}
  20. MyTable.rows[idx].cells[0].innerHTML = '<label><input type="checkbox"><a onclick="sh(this)">' + CurrentValue + '</a></label>';
  21. } else {
  22. MyTable.rows[idx].className = 'lev2';
  23. MyTable.rows[idx].cells[0].innerHTML = ' ';
  24. }
  25. idx++;
  26. rowCount = MyTable.rows.length;
  27. }
  28. document.getElementById('cmdMakeGroup').disabled = true;
  29. document.getElementById('cmdCollapseAll').disabled = false;
  30. document.getElementById('cmdExpandAll').disabled = false;
  31. }
  32.  
  33. function ResetAll() {
  34. var cs = document.getElementsByTagName('input');
  35. for (i=0; i < cs.length; i++) {
  36. if (cs.type == 'checkbox') {
  37. cs.checked = false;
  38. }
  39. }
  40. }
  41.  
  42. function ShowLevel(row,lv) {
  43. var tBody = row.parentNode;
  44. var i = row.rowIndex;
  45. row = tBody.rows; // Попытка перейти к следующей строке
  46. while (row && row.className.substring(3)*1 > lv) {
  47. if (row.className.substring(3)*1 == lv+1) {
  48. row.style.display = 'table-row';
  49. if ((row.querySelector('td input')) && row.querySelector('td input').checked) {
  50. ShowLevel(row,lv+1);
  51. }
  52. }
  53. i+=1;
  54. row = tBody.rows;
  55. }
  56. }
  57.  
  58. function HideLevel(row,lv) {
  59. var i = row.rowIndex;
  60. var tBody = row.parentNode;
  61. row = tBody.rows; // Попытка перейти к следующей строке
  62. while (row && row.className.substring(3)*1 > lv) {
  63. row.style.display = 'none';
  64. i+=1;
  65. row = tBody.rows;
  66. }
  67. }
  68.  
  69. function sh(el) {
  70. var row = el.parentNode.parentNode.parentNode;
  71. var lv = row.className.substring(3)*1; // Уровень строки, циферка после 'lev'
  72. if (row.querySelector('td input').checked) {
  73. HideLevel(row,lv);
  74. } else {
  75. ShowLevel(row,lv);
  76. }
  77. }
  78.  
  79. function SwapAll(b) {
  80. var tbl = document.getElementsByClassName('treetable')[0];
  81. for (i=1; i < tbl.rows.length; i++) {
  82. if (tbl.rows.className != 'lev1') {
  83. if (b) {tbl.rows.style.display = 'table-row';}
  84. else {tbl.rows.style.display = 'none';}
  85. }
  86.  
  87. if (tbl.rows.querySelector('td input')) {tbl.rows.querySelector('td input').checked = b;}
  88. }
  89. }


CODE (html):
скопировать код в буфер обмена
  1.  
  2. <body><center>
  3.  
  4. <button onclick="MakeGroupTable();" id="cmdMakeGroup">Сгруппировать</button>
  5. <button onclick="SwapAll(false);" id="cmdCollapseAll" disabled>Свернуть все</button>
  6. <button onclick="SwapAll(true);" id="cmdExpandAll" disabled>Развернуть все</button>
  7. <a href="extended.php"><button >Сгруппировать по дате</button></a>
  8. <br><br>
  9. <table id="MyTable"><script>
  10.  
  11. </script>
  12.  
  13. <col width=100> <col width=150>
  14. <thead>
  15. <tr>
  16. <th> Номер Счетчика </th>
  17. <th> ID </th>
  18. <th>  Fields  </th>
  19. <th>  Description  </th>
  20. <th>  <form action="<?=$_SERVER["PHP_SELF"]?>" method="get">
  21. Введите дни(от 1 до 30):
  22. <input type="text" name="name"><br>
  23. <input type = "submit" value = "Считать">
  24. <a href="example.php" ><input type = "button" value = "Сброс" onclick=""></a>
  25. </form> </th>
  26. <th>  Значение  </th>
  27. </tr>
  28. </thead>
  29. <tr>
  30. <td></td>
  31. <td></td>
  32. <td></td>
  33. <td></td>
  34. <td></td>
  35. <td></td>
  36.  
  37. </tr>
  38.  
  39. <?php
  40. $connect = mysql_connect("*************", "*************", "**************") or die("Ошибка соединения!");
  41. mysql_select_db("smartvend", $connect);
  42.  
  43. if (isset($_GET["name"]))
  44. {
  45. $name = $_GET["name"];
  46. $query ="SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
  47. FROM
  48. amr_fields fields, amr_read_history history
  49. WHERE
  50. fields.ID=history.FieldName AND ExecDate>= SUBDATE(CURRENT_DATE, INTERVAL $name DAY)
  51. ORDER BY MeterNum asc, ExecDate ASC";
  52. }
  53. else {
  54. $result = mysql_query("SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
  55. FROM
  56. amr_fields fields, amr_read_history history
  57. WHERE
  58. fields.ID=history.FieldName AND ExecDate>= '(CURDATE()'
  59. ORDER BY MeterNum asc, execdate DESC",$connect);
  60.  
  61. while ($data = mysql_fetch_row($result))
  62. {
  63. echo"<tr>";;
  64. echo"<td>{$data[0]}</td>";
  65. echo"<td>{$data[1]}</td>";
  66. echo"<td>{$data[2]}</td>";
  67. echo"<td>{$data[3]}</td>";
  68. echo"<td>{$data[4]}</td>";
  69. echo"<td>{$data[5]}</td>";
  70.  
  71. echo"</tr>";
  72.  
  73. }
  74. }
  75.  
  76. $sql = mysql_query($query) or die("<p></p>");
  77.  
  78. while ($data = mysql_fetch_row($sql))
  79. {
  80. echo"<tr>";
  81. echo"<td>{$data[0]}</td>";
  82. echo"<td>{$data[1]}</td>";
  83. echo"<td>{$data[2]}</td>";
  84. echo"<td>{$data[3]}</td>";
  85. echo"<td>{$data[4]}</td>";
  86. echo"<td>{$data[5]}</td>";
  87. echo"</tr>";
  88. }
  89. mysql_close();
  90.  
  91. ?>
  92. </table>
  93. </center>
  94. </body>
PHucker Отправлено: 27 Мая, 2014 - 06:38:38 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
Panoptik пишет:
по хорошему я бы обработал изначально данные перед выводом. сгрупировав их в массив, по этому самому номеру, и потом выводил в таблице согласно группам, а группу можно вывести в отдельном диве или любом другом удобном элементе, и отображать скрывать его сколько угодно.


я могу просто создать массив. но с этим не сталкивался. на простом примере покажите плиз.
PHucker Отправлено: 26 Мая, 2014 - 12:54:21 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
DelphinPRO пишет:
как я понял задачу:

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

Делается весьма просто.

Генерируем такую разметку
CODE (html):
скопировать код в буфер обмена
  1. <table id="data-table">
  2.     <tr><td class="clicker" data-id="g12">12</td><td>...</td></tr>
  3.     <tbody id="g12" class="hidden">
  4.         <tr><td>12</td><td>...</td></tr>
  5.         <tr><td>12</td><td>...</td></tr>
  6.     </tbody>
  7.     <tr><td class="clicker" data-id="g14">14</td><td>...</td></tr>
  8.     <tbody id="g14" class="hidden">
  9.         <tr><td>14</td><td>...</td></tr>
  10.         <tr><td>14</td><td>...</td></tr>
  11.     </tbody>
  12. </table>


Пишем простой яваскрипт (jQuery)
CODE (javascript):
скопировать код в буфер обмена
  1. $("#data-table").on('click', '.clicker', function(){
  2.     var relId = $(this).data('id);
  3.    $('#' + relId).toggle();
  4. });


C генерацией разметки справитесь сами? Улыбка

CSS забыл для скрытия блоков изначально

CODE (css):
скопировать код в буфер обмена
  1. .hidden { display: none; }
Улыбка

вы меня правильно поняли, но столько ответов, надо в порядок привести башку Радость
(Добавление)
извините, вы можете показать на примере с моим кодом? хотя бы кончик.
для новичка сложновато что ли понять...
PHucker Отправлено: 26 Мая, 2014 - 12:30:29 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
Panoptik пишет:
каждой строке таблицы нужно давать класс - к примеру 'elem-12' где 12 этот ваш номер
и потом если у вас в таблице несколько строк подряд имеют тот же класс, то просто отображаете скрываете строки с этим классом


т.е я вытаскиваю из БД допустим значение 37130550470 и даю этому селекту какой-нибудь класс. и создаю кнопку с названием 37130550470, даю ему функцию которая будет скрывать\раскрывать?
(Добавление)
вот мой код
CODE (html):
скопировать код в буфер обмена
  1. <html>
  2.     <head>
  3.     <title>Extended Report</title>
  4.     <link href="css/frombase.css" type="text/css" rel="stylesheet">
  5.      </head>
  6.         <body>
  7.     <center>
  8.     <table border="1" height="" width="" id="table1">
  9.            
  10.              <tr >
  11.                 <td id="first">НомерСчетчика</td>
  12.                 <td id="first">ID</td>
  13.                 <td id="first">Fields</td>
  14.                 <td id="first">Description</td>
  15.                 <td id="first">
  16.  
  17.                         <form action="<?=$_SERVER["PHP_SELF"]?>" method="get">
  18.                             Введите дни(от 1 до 30):
  19.                             <input type="text" name="name"><br>
  20.                         <input type = "submit" value = "Считать">
  21.                         <input type = "button" value = "Сброс" onclick="">
  22.                         </form>
  23.                         </td>
  24.                 <td id="first">Значение</td>
  25.                
  26.              </tr>
  27.         <?php
  28.  $connect = mysql_connect("**********", "report_user", "*********")  or die("Ошибка соединения!");
  29.    mysql_select_db("smartvend", $connect);
  30.  
  31.  
  32. if (isset($_GET["name"]))
  33. {
  34.  $name = $_GET["name"];
  35.  $query ="SELECT history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
  36. FROM
  37. amr_fields fields, amr_read_history history
  38. WHERE
  39. fields.ID=history.FieldName AND ExecDate>= SUBDATE(CURRENT_DATE, INTERVAL $name DAY)
  40.  ORDER BY ExecDate ASC";
  41. }
  42. else {
  43.         $result = mysql_query("SELECT  history.MeterNum, fields.ID, history.FieldName, fields.Description, history.ExecDate, history.FieldValue
  44.                         FROM  
  45.                             amr_fields fields, amr_read_history history
  46.                         WHERE
  47.                             fields.ID=history.FieldName AND ExecDate>= '(CURDATE()'
  48.                             ORDER BY execdate DESC",$connect);
  49.                          
  50.         while ($data = mysql_fetch_row($result))
  51.         {
  52.             echo"<tr>";
  53.              echo"<td>{$data[0]}</td>";
  54.              echo"<td>{$data[1]}</td>";
  55.              echo"<td>{$data[2]}</td>";
  56.              echo"<td>{$data[3]}</td>";
  57.              echo"<td>{$data[4]}</td>";
  58.              echo"<td>{$data[5]}</td>";
  59.             echo"</tr>";
  60.         }    
  61.         }
  62.  
  63. $sql = mysql_query($query) or die("<p>Выберите дни</p>");
  64.  
  65. while ($data = mysql_fetch_row($sql))
  66. {
  67.   echo"<tr>";
  68.   echo"<td>{$data[0]}</td>";  
  69.   echo"<td>{$data[1]}</td>";
  70.   echo"<td>{$data[2]}</td>";
  71.   echo"<td>{$data[3]}</td>";
  72.   echo"<td>{$data[4]}</td>";
  73.   echo"<td>{$data[5]}</td>";
  74.   echo"</tr>";
  75. }
  76. mysql_close();
  77.  
  78.  
  79.     ?>
  80.     </table>
  81.     </center>
  82.         </body>
  83. </html>

где MeterNum это те значения которые выводятся(первый столбец).

и как все это сделать я не могу представить даже.
PHucker Отправлено: 26 Мая, 2014 - 11:49:35 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
хммм тупик Огорчение
PHucker Отправлено: 26 Мая, 2014 - 11:16:03 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
или это трудно? а вы что посоветуете?
PHucker Отправлено: 26 Мая, 2014 - 10:33:44 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
вот в первом столбце есть значения. в нем есть много одинаковых. и нужно сделать кнопку для всех значений только по одной каждому. то есть когда нажать допустим
на 37130550488 то этот список раскрывался и выводились все 37130550488. и так дальше.
И значение других столбцов должно меняться соответственно этому столбцу.
PHucker Отправлено: 26 Мая, 2014 - 10:17:19 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
Я вас где-то встречал Улыбка. Вопрос по той же теме. Только проблема другая. Просто думаю что с такими задачами научусь быстрее программированию Улыбка
PHucker Отправлено: 26 Мая, 2014 - 06:08:41 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
sos!!! есть кто?
PHucker Отправлено: 22 Мая, 2014 - 06:22:39 • Тема: как сделать список раскрывающимся? • Форум: Вопросы новичков

Ответов: 17
Просмотров: 661
Здравствуйте! Есть у меня таблица и задача которую трудновато мне решить. Допустим у меня в таблице есть один такой столбец который имеет много одинаковых значений. Пусть это значение будет числом 12. И это число при выводе очень много раз повторяется. И как сделать так, чтобы была кнопка и при клике раскрывались все значения числа 12? то есть как здесь:

<script>function showTooltip()
{
var myDiv = document.getElementById('tooltip');
if(myDiv.style.display == 'none')
{
myDiv.style.display = 'block';
} else {
myDiv.style.display = 'none';
}
return false;
}</script>
<button onclick=showTooltip()> Показать </button>
<div id=tooltip style='display: none'>

<li>Значение числа 12 №1</li>
<li>Значение числа 12 №2</li>
<li>Значение числа 12 №3</li>
<li>Значение числа 12 №4</li>

</div>
только эти данные берутся из БД в разном порядке. Потому что у меня стоит сортировка по времени.
PHucker Отправлено: 20 Мая, 2014 - 05:38:36 • Тема: как укоротить код • Форум: Вопросы новичков

Ответов: 11
Просмотров: 408
Братюнь, спасибо! Улыбка Хотел нажать на кнопку спасибо, надостатачно соообщений Недовольство, огорчение. Все слишком хорошо работает Улыбка Спасибо еще раз
PHucker Отправлено: 19 Мая, 2014 - 13:52:46 • Тема: как укоротить код • Форум: Вопросы новичков

Ответов: 11
Просмотров: 408
понимаете, у меня есть форма:
<form action="<?=$_SERVER["PHP_SELF"]?>" method="get">
Введите дни(от 1 до 30):
<input type="text" name="name"><br>
<input type = "submit" value = "Считать">
</form>

и когда вводят дни от 1 до 30 ти, выводятся соответствующие данные. В вашем коде я не понял где if ($name == 16 (или 18 или 25)). у вас берет только name. поэтому мне приходится каждому значению писать отдельный скрипт. в итоге у меня получилось где-то 1400 строк. и надо придумать хитрый ход и укоротить, что я не могу придумать. как-то надо else и while укоротить. какие есть варианты? SOS!!! Огорчение

Страниц (2): [1] 2 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB