2013-04-09 4 views
1

Хорошо, это играло мою голову какое-то время - и я знаю, что это просто ... но усталость снабжает меня ментальным блоком ... надеюсь вы, ребята, можете помочь!Отдельные элементы массива в отдельные текстовые поля (PHP)

меня эта длинная строка, которая я разобранная в массив:

Array 
(
[0] => 15896,10 
[1] => 15897,10 
[2] => 15898,1 
.....(to [95] =>) 

Теперь то, что я хочу сделать, это перебирать каждую строку массива и поместить 15896 номеров в одном текстовом поле, и 10 в отдельное текстовое поле.

Досадно, что я сделал что-то подобное раньше в предыдущем приложении, хотя я не могу применить один и тот же синтаксис (последнее время у меня был 2-й массив, и он повторялся с помощью двух циклов foreach ....

заранее спасибо

Текущий код:

$getString = mysql_query("SELECT orderString FROM stock_orders WHERE orderID ='".$_GET["type"]."'"); 
while($row = mysql_fetch_array($getString)){ 
$order = $row["orderString"]; 
} 
$newArray = array(); 

$newArray = explode(" - ", $order); 
+1

Используйте другой 'взрываются ('' массив [0])' в цикле Еогеасп и эхо из в текстовые поля – nickhar

+0

Ok, я сделал: 'Еогеасп ($ newArray как $ обр) { \t echo "
"; } '} Естественно, выводит каждую строку в соответствующее текстовое поле. Однако, когда я это делаю: ' echo '
"; ' Я просто получаю« Массив »в каждой коробке? – user2029952

+0

@ user2029952 См. Мой ответ на пример – nickhar

ответ

2

использовать что-то вроде:

$newArray = array(); 
$newArray = explode(" - ", $order); 

foreach ($newArray as $arrayItem) 
{ 
    $parts = explode(',', $arrayItem); 
    echo "<input type='text' value='$parts[0]'> - <input type='text' value='$parts[1]'><br/>"; 
} 

Если вы помещаете значения в текстовые поля, вам следует потянуть и использовать идентификатор Stock_order, иначе вы не сможете их идентифицировать.

+0

Нужно немного подкорректировать, но тем не менее работало! Благодаря! – user2029952

+0

Извинения, требуются твики. Рад, что это сработало! – nickhar

1

Предполагая, что ваш размер секунд является строкой.

$array = Array(
    0 => "15896, 10", 
    1 => "15897, 10" 
    ); 

foreach ($array as &$v) { 
    $result = preg_split("/[\s]*,[\s]*/", $v); 

    foreach ($result as &$r) { 
     echo "<input type='text' value='".$r."'/>"; 
    } 
// echo "<\br>"; 
}