2017-06-21 217 views
-3

我需要通过MySQL数据循环的帮助。嵌套的while循环PHP

我有库存表如下。

enter image description here

我想要做的是做一个选择语句这将得到股票表的所有行,如果它有“numberassigned_vnr”大于1,循环通过并显示为单独一行。

我需要写SELECT语句这将遍历表并显示结果,如果有“numberassigned_vnr”不止一个,循环并打印结果到多次帮助。

所以我应该看到这样的事情。

1 27 300 Black 
1 27 300 Black 
1 27 300 Black 
7 29 315 Black 
7 29 315 Black 
2 28 315 Black 
3 29 315 Black 
...... 
..... 

在此先感谢您。

+1

我投票关闭这一问题作为题外话,因为你应该阅读精细的手工:http://php.net/manual/en/control-structures。 foreach.php –

+0

你在询问重复的记录。 。 我认为你应该做所需的循环与PHP只有 –

+0

是的复制记录。第二个循环会查找“numberassigned_vnr”值,如果它不止一个;它应该将该记录复制到该次数。 –

回答

0

PHP:

 


while($row=mysqli_fetch_array($result,MYSQL_ASSOC)){ 

    $numberassigned_vnr=$row['numberassigned_vnr']; 

    for($i=1;$i<=$numberassigned_vnr;$i++){ 

     echo "your coloumns here like $row[coloumn1] $row[coloumn2]..."; 

    } 

} 

 

希望这有助于

0

你可以这样做

// Create connection 
    $conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 

    $sql = "SELECT id, firstname, lastname FROM MyGuests"; 
    $result = $conn->query($sql); 
    if (!empty($result)) { 
     foreach ($result as $data) { 
      for ($i = 0; $i < $data->numberassigned_vnr; $i++) { 
       echo "$data->id_vnr $data->idstk_vnr $data->width_vnr $data->color_vnr "; 
      } 
     } 
    } 

我hting它会为你工作。

0

如果你询问按照“numberassigned_vnr”行多次印刷,这里是解决方案:

// $conn = your db connection 

$result = mysqli_query($conn,"SELECT * FROM your_table"); 

if(!empty($result)) { 
    while($row = mysqli_fetch_array($result,MYSQLI_ASSOC)){ 

     for($i=0; $i < $row['numberassigned_vnr']; $i++){ 
      echo $row['id_vnr']." ".$row['idstk_vnr']." ".$row['width_vnr']." ".$row['color_vnr']; 
     } 
    } 

    // Free result set 
    mysqli_free_result($result); 
} 

mysqli_close($conn); 
0

使用PDOWHERE手柄上MySQL声明,让所有的结果,其中numberassigned_vnr > 1

东西如下:

$db = new PDO("..."); 
$statement = $db->prepare("SELECT * FROM stock_table WHERE numberassigned_vnr > :nrassigned"); 
$statement->execute(array(':nrassigned' => 1));  
while ($row = $statement->fetchAll(PDO::FETCH_ASSOC)){ 
    var_dump($row); // var_dump complete row 
    echo $row['id_vnr'] . " " . $row['idstk_vnr'] . " " . $row['width_vnr'] . " " . $row['color_vnr']; 
}