PHP.SU

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

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

> Найдено сообщений: 8
lprooo Отправлено: 08 Мая, 2017 - 11:12:37 • Тема: передача переменной post • Форум: Вопросы новичков

Ответов: 1
Просмотров: 118
Всем привет!

Столкнулся с проблемой передачи в post.
При переходе по ссылке не могу передать нужный id, передается последнее значение.
В чем моя ошибка?

PHP:
скопировать код в буфер обмена
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. </head>
  6. <body>
  7. <?PHP
  8. require_once 'connection.php'; // подключаем скрипт
  9.  
  10. $link = mysqli_connect($host, $user, $password, $database)
  11.     or die("Ошибка " . mysqli_error($link));
  12.  
  13.        
  14. $query ="SELECT * FROM override";
  15.  
  16. $result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link));
  17. if($result)
  18. {
  19.     $rows = mysqli_num_rows($result); // количество полученных строк
  20.    
  21.     echo "<table  border='1'  cellspacing='0'><tr><th>Id</th><th>Дата</th><th>Сотрудник</th><th>ФИР клиента</th></tr>";
  22.     for ($i = 0 ; $i < $rows ; ++$i)
  23.     {
  24.         $row = mysqli_fetch_row($result);
  25.         echo "<tr>";
  26.             for ($j = 0 ; $j < 4 ; ++$j)
  27.                         {
  28.                                         echo "<td>";
  29.                                         echo '<a href="#" onClick="document.forms[\'form1\'].submit()">'.$row[$j].'</a>';
  30.                                         echo '<form action="html1.php" name="form1" method="post">';
  31.                                         echo '<input name="test" type="hidden" value='.$row[$j].'>';   
  32.                                         echo "</td>";
  33.                         }
  34.                 echo "</tr>";  
  35.     }
  36.     echo "</table></form>";
  37.      
  38.     // очищаем результат
  39.     mysqli_free_result($result);
  40. }
  41.  
  42. mysqli_close($link);
  43. ?>
  44. </body>
  45. </html>
lprooo Отправлено: 22 Декабря, 2016 - 13:48:17 • Тема: двумерный массив в таблицу • Форум: Вопросы новичков

Ответов: 0
Просмотров: 72
имеется массив
array(2)
{ [work]=> array(3)
{
[0]=> string(46) "Сотр1"
[1]=> string(44) "Сотр2"
[2]=> string(52) "Сотр3"
}
[break]=> array(3)
{
[0]=> string(46) "Сотр4"
[1]=> string(52) "Сотр5"
[2]=> string(56) "Сотр6"
}
}

пытаюсь вывести в таблицу вида
work break
Сотр1 Сотр4
Сотр2 Сотр5
Сотр3 Сотр6

получается вывести только так:
work break
Сотр1 Сотр2 Сотр3
Сотр4 Сотр5 Сотр6

PHP:
скопировать код в буфер обмена
  1.  
  2. foreach ($tw as $state => $mass) {
  3.                 echo '<tr>';           
  4.                         foreach($mass as $inkey=> $val) {                                                              
  5.                                 echo '<td>'.$val.'</td>';                              
  6.                         }
  7.                 echo '</tr>';  
  8.         }
  9.  
  10.  


Подскажите плиз как корректно вывести массив в таблицу?
lprooo Отправлено: 15 Декабря, 2016 - 17:28:53 • Тема: перебрать результат запроса • Форум: Вопросы новичков

Ответов: 8
Просмотров: 666
Разобрался сам -> foreach
lprooo Отправлено: 15 Декабря, 2016 - 15:25:25 • Тема: перебрать результат запроса • Форум: Вопросы новичков

Ответов: 8
Просмотров: 666
[quote=Sail][/quote]

Мучаюсь два дня уже, пытаюсь вывести массив $arr2 в echo, получается вот так:
сотрудник в работе ожидание
Вася 0 1
Вася 0 1
Вася 1 1
Вася 1 2
Вася 2 2
Вася 2 3
Вася 2 3
Вася 2 4
Вася 3 4
Вася 4 4
Вася 4 5
Вася 4 5
Вася 5 5
Вася 5 5
Петя 1 1
Петя 2 1
Петя 2 2
Петя 3 2
Петя 3 3
Петя 4 3
Петя 4 4
Петя 5 4
Петя 5 5

пытаюсь сделать вот так:
сотрудник в работе ожидание
Вася 5 5
Петя 5 5

В чем ошибка?

код:
PHP:
скопировать код в буфер обмена
  1. $arr2 = array();
  2. $arrTmp = array();
  3. while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_BOTH)) {    
  4.         $key = array_search($row['UserName'], $arrTmp);
  5.     if($key === FALSE) {
  6.         $arrTmp[] = $row['UserName'];
  7.         $row2 = array('Сотрудник' => $row['UserName'], '2' => 0, '3' => 0);
  8.         $row2[$row['EventId']]++;
  9.         $arr2[] = $row2;
  10.     } else {
  11.                 $arr2[$key][$row['EventId']]++;
  12.         }      
  13.         echo $arr2[$key]['Сотрудник']." ". $arr2[$key]['2']. " ". $arr2[$key]['3']."<br>";
  14. }  
  15. unset($arrTmp);
  16. var_dump($arr2);
lprooo Отправлено: 09 Сентября, 2016 - 16:21:41 • Тема: перебрать результат запроса • Форум: Вопросы новичков

Ответов: 8
Просмотров: 666
Sail пишет:
lprooo пишет:
как перебрать результат описанный мною

Например:
PHP:
скопировать код в буфер обмена
  1. $arr2 = array();
  2. $arrTmp = array();
  3. foreach($arr as $row) {
  4.     $key = array_search($row['product'], $arrTmp);
  5.     if($key === FALSE) {
  6.         $arrTmp[] = $row['product'];
  7.         $row2 = array('продукт' => $row['product'], 'магазин' => 0, 'склад' => 0);
  8.         $row2[$row['status']]++;
  9.         $arr2[] = $row2;
  10.     } else {
  11.         $arr2[$key][$row['status']]++;
  12.     }
  13. }
  14. unset($arrTmp);
  15. var_dump($arr2);

Где массив $arr, предположим, имеет формат array(array('product' => 'nameOfProduct', 'status' => 'nameOfStatus'));
Ну, или если заменить foreach($arr as $row) на общеупотребляемый разбор результатов запроса: while($row = mysql_fetch_...(...)) с точностью до индексов полученных данных


Спасибо большое!!!
lprooo Отправлено: 09 Сентября, 2016 - 14:37:31 • Тема: перебрать результат запроса • Форум: Вопросы новичков

Ответов: 8
Просмотров: 666
LIME пишет:
PHP:
скопировать код в буфер обмена
  1. $products = [];
  2. while($row = $result->fetch_array()){
  3.     $products[$row['product']][$row['stat']] = $row['cnt'];
  4. }


Спасибо, но не то, здесь насколько я понял перебирается результат запроса с count.
как перебрать результат описанный мною?
lprooo Отправлено: 09 Сентября, 2016 - 14:21:08 • Тема: перебрать результат запроса • Форум: Вопросы новичков

Ответов: 8
Просмотров: 666
LIME пишет:
тут лучше взять такой запрос
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT COUNT(product) AS cnt, stat FROM products
  2. GROUP BY product, stat

и разобрать его в цикле в php


в этом и вопрос, как его разобрать в цикле, запрос уже максимально сгруппирован, выложил просто пример..
lprooo Отправлено: 09 Сентября, 2016 - 14:02:20 • Тема: перебрать результат запроса • Форум: Вопросы новичков

Ответов: 8
Просмотров: 666
есть результат запроса, который выводит следующий результат:

продукт статус
апельсин магазин
яблоко магазин
морковь магазин
апельсин магазин
яблоко склад
морковь склад
яблоко склад
морковь склад

как перебрать результат чтобы получилась таблица вида:

продукт магазин склад
апельсин 2 0
яблоко 1 1
морковь 1 2

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB