powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (php, mysql) Изменения за последние 30 дней.
9 сообщений из 9, страница 1 из 1
(php, mysql) Изменения за последние 30 дней.
    #39639380
Adrinalline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Проблема следующая:
Имеется mysql таблица со столбцами "№", "Количество, кг", "Изменение".
В данный момент все работает так: В форму вносятся значения, если № совпадает с существующим, то изменяется количество и просчитывается разница с количеством, которое было до изменения.
Как нужно: В начале месяца фиксируется значение количества, в течение месяца количество изменяется и просчитывается в столбец "Изменение", в начале следующего месяца "Изменение" переходит в стобец "разница за месяц(например)" и сохраняется на 30 дней.
На php и mysql программирую всего неделю, опыта в программировании до этого не было никакого. На форуме похожего не нашел, в гугле нужного так же не обнаружил. Добавил весь скрипт архивом(код кривой, критике буду только рад).
Спасибо всем, кто откликнется.
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39639640
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скрипт писать за вас вряд ли кто-то захочет, да и архив качать лень, тем более с телефона. Все таки уточнили бы вопрос свой и примеры кода через тег src.
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39639733
Adrinalline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот код формы отправки:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
	<form class="forma" action="/pantones/form.php" method="post" name="forma"> 
			<th style="width: 110px;" class="forma" for="pantone">Пантон №</th><br/> 
			<th style="width: 110px;" class="forma" for="count">Количество</th><br/>
			<th style="width: 110px;" class="forma" for="client">Заказчик</th><br/>
			<th style="width: 110px;" class="forma" for="order">Заказ</th><br/>
		<tr>
			<td class="forma"><input style="width: 100px;" type="text" name="pantone" ></td>
			<td class="forma"><input style="width: 100px;" type="text" name="count" ></td>
			<td class="forma"><input style="width: 100px;" type="text" name="client" ></td>
			<td class="forma"><input style="width: 100px;" type="text" name="order" ></td>
		</tr>	
		<tr><td style="border: 0px;"><input id="submit" type="submit" value="Отправить данные"></form>


Код: 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.
<?php require 'connect.php'; ?>
<?php header('Location: /pantones.html'); ?>
<?php


	$pantone = $_POST['pantone'];
	$count = $_POST['count'];
	$last_change= $_POST['last_change'];
	$client = $_POST['client'];
	$order = $_POST['order'];
	$count_f = str_replace(",",".",$count);
	
	//результат нажатия на кнопку отправить
	$nQ = mysql_query("SELECT * FROM pantones WHERE pantone ='$pantone'"); 
		if(mysql_num_rows($nQ)) { 
			mysql_query("UPDATE `pantones` SET `last_change` = `count`, `count` = '$count_f', `client` = CONCAT(`client`, ' ' , '$client'), `order` =CONCAT(`order`, ' ' , '$order') WHERE `pantone` = '$pantone';") or die(mysql_error()); 
			//echo "Информация изменена <a href=/index.php>OK</a>"; 
			} 
		else { 
			mysql_query("INSERT INTO `pantones` (`pantone`, `count`, `last_change`, `client`, `order`)  VALUES ('$pantone', '$count_f', '$last_change', '$client', '$order');") or die(mysql_error()); 
			//echo "Информация занесена в базу данных <a href=/index.php>OK</a> ";
			}; 
		
			mysql_query ('SET @n = 0');
			$query = mysql_query ('UPDATE `pantones` SET id = (@n := @n + 1)');
		mysql_close();
?>


В такой форме таблица выводится на сайте:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?php require 'connect.php'; 

$bd = mysql_connect ("localhost","root","");
mysql_select_db("laminpack",$bd);

$result = mysql_query("SELECT * FROM `pantones`",$bd);
 
echo "<table style='margin-left: 15px;'>";
echo "<tr><th>№</th><th>Пантон №</th><th>Количество, кг</th><th>Изменение</th><th>Заказчик</th><th>Заказ</th></tr>";
while ($row=mysql_fetch_array($result)){
$pole1=$row[0];
$pole2=$row[1];
$pole3=$row[2];
$pole4=$row[2]-$row[3];
$pole5=$row[4];
$pole6=$row[5];

echo "<tr><td>$pole1</td><td>$pole2</td><td>$pole3</td><td>$pole4</td><td>$pole5</td><td>$pole6</td></tr>";
}
echo "</table>"; 
?>
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39639917
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Adrinalline,

Убого спроектированная БД - залог будущих костылей и велосипедов.
Бесплатный совет:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
INSERT INTO `table`
(`col1`,`col2`)
VALUES 
(1,2)
ON DUPLICATE KEY UPDATE 
`col1`=1,
`col2`=2
;



P.S.
С учётом приведенного кода за пару советов вам не помочь - тут просто огромный провал в образовании и отсутствие опыта.
В разделе "Проектирование БД" попросите помочь с проектированием системы.
Потрудитесь составить потоки данных - что, где, когда, как и кем изменяется, и то же самое - что, где, когда и кем читается.
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39639964
Adrinalline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Руслан Дамирович,
Ну, что касается образования, так я технолог в полиграфии, а не программист. А касательно совета про БД спасибо, почитаю раздел.
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39639984
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИМХО, проще взять какой-нибудь фреймворк. Yii2, например, - он для новичка будет проще.
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39640046
Adrinalline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hett,
спасибо, буду пробовать
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39641738
Bednii_Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нормальный советов вы надавали, господа. Считай что отправили на хрен
...
Рейтинг: 0 / 0
(php, mysql) Изменения за последние 30 дней.
    #39641902
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bednii_StudentНормальный советов вы надавали, господа. Считай что отправили на хрен
Каков вопрос, таков совет. Никто в здравом уме не будет переписывать кривое решение.

В его случае - или самообразование в разделе "Проектирование БД" или сразу в раздел "Работа".
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (php, mysql) Изменения за последние 30 дней.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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