簡體   English   中英

使用php從數據庫顯示多個列

[英]Display more than one column from database using php

我有一個PHP功能:

function get_files() {
    global $path, $sql_algemeen, $oldServer, $newServer;
    $dir = opendir($path);
    while($file = readdir($dir) ) {
        if(substr($file,0,1) != '.') {
            $query = "SELECT * FROM rb_migration_files WHERE filename = '$file'";
            $sql_algemeen->Query($query);
            if ($sql_algemeen->NumberRows() > 0) {
                $sql_algemeen->ReadRow();
                $files[$file] = $sql_algemeen->RowData['status'];
                <<<< What should I do here or how should I modify this part. >>>>
            } else {
                $query = "INSERT INTO rb_migration_files (filename, status, old_server, new_server) VALUES ('$file', 0, $oldServer, $newServer);";
                $sql_algemeen->Query($query);
                $files[$file] = 0;
            }
        }
    }
    return($files);
}

如何從數據庫中檢索更多的那一列? 因為在這種情況下只有$files[$file] = $sql_algemeen->RowData['status']; 是一回事,但我想再增加兩列。

那我怎么回應呢? 因為這是在這一刻完成的;

foreach($files as $file=>$status) {
    echo '<tr>';
    echo '<td>' . '<a href="?bestand='. $file.'">'.$file . '</a></td>';
    echo '<td> . $status . </td>';
    echo '<td style="text-align:center">'. <<Here I want the next columns>> .'</td>';
    echo '<td style="text-align:center">' . <<And the next one>> .'</td>';
    echo '</tr>';
}

我可以感覺到我很親密,但我只是沒有更多的專欄。

您應該能夠使用$sql_algemeen->RowData['other_column_name'];獲取其他列的數據$sql_algemeen->RowData['other_column_name']; 代碼已經選擇了數據庫中的所有列,因為SELECT *表示(*代表所有列)。

要“回顯”您首先需要將數據添加到$ files數組中,以便在echo循環中可用。 為此,您需要重寫$ files數組。 這里使用新列“some_column”重寫代碼:

function get_files() {
  global $path, $sql_algemeen, $oldServer, $newServer;
  $dir = opendir($path);
  while($file = readdir($dir) ) {
      if(substr($file,0,1) != '.') {
          $query = "SELECT * FROM rb_migration_files WHERE filename = '$file'";
          $sql_algemeen->Query($query);
          if ($sql_algemeen->NumberRows() > 0) {
              $sql_algemeen->ReadRow();
              $files[$file] = array(
                'status' => $sql_algemeen->RowData['status'],
                'some_column' => $sql_algemeen->RowData['some_column'],
              );
          } else {
              $query = "INSERT INTO rb_migration_files (filename, status, old_server, new_server) VALUES ('$file', 0, $oldServer, $newServer);";
              $sql_algemeen->Query($query);
              $files[$file] = array(
                'status' => 0,
                'some_column' => 'some_value', // whatever the columns value is on creation.
              );
          }
      }
  }
  return($files);
}

foreach($files as $file=>$column) {
  echo '<tr>';
  echo '<td>' . '<a href="?bestand='. $file.'">'.$file . '</a></td>';
  echo '<td> . $column['status'] . </td>';
  echo '<td> . $column['some_column'] . </td>';
  echo '<td style="text-align:center">'. <<Here I want the next columns>> .'</td>';
  echo '<td style="text-align:center">' . <<And the next one>> .'</td>';
  echo '</tr>';
}

當然,更改$ files變量可能會破壞您在此處未提及的代碼的其他部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM