karthick.1983 Ответов: 1

Как вставить значения текстовой области multidata и входные значения в одну вставку


Hai to all



here is my table data..

(4 Columns/1row in mysql table)

id                 bno                            date                      results
310                001	 			  02-15-2020               MI,108.53
									   Oh,194.57
									   PA,182.22
									   WA,238.57

How to split(statemiles) single column into (state, Miles) two columns and output like following 5 columns /4rows in mysql using php code.

(5 Columns in mysql table)
------------------------------------------------------------------------------------

id                  bno                             date                  result1     result2

310                001	 			  02-15-2020               MI          108.53

310                001	 			  02-15-2020		   Oh          194.57

310                001	 			  02-15-2020		   PA          182.22

310                001	 			  02-15-2020		   WA          238.57


Что я уже пробовал:

Следующий php - код split textarea multi values успешно разбивается на столбцы.

<?php
//invoice.php  
include('../includes/config.php');

if(isset($_POST["add"]))
{
$order_no=$_POST['order_no'];
$comma = preg_replace('/,\\s*/', "', '", $_POST["stateandmileslist"]);
$row = preg_replace('/\\n/', "'), \n('", $comma);
$query = "insert into tis_satesmiles (states, miles) values ('" . $row . "')";
$statement = $dbh->prepare($query);
$statement->execute();
}
?>

1 Ответов

Рейтинг:
0

OriginalGriff

Самый простой способ: измените свою БД. не храните несколько значений в одном столбце, независимо от того, насколько проще это может быть из вашего программного обеспечения для презентаций, чтобы сбросить его туда. Храните его в отдельных столбцах, и тривиально "соединить их вместе", если вам это нужно. (Черт возьми, вы можете создать вычисляемый столбец, который делает это автоматически, когда это необходимо!)
Но это также тривиально иметь дело с данными как отдельными объектами, которые гарантированно корректны (столбцы миль будут десятичными(7,2), поэтому он хранит только действительные числа), и разбиение их на вашем языке представления просто, как и проверка пользовательского ввода в качестве действительного кода состояния и действительного расстояния.

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