如何将所有列名称放在php数组中?

时间:2016-06-24 08:22:36

标签: php mysql

我有一个名为 showcase 的表格,我希望用户在此表格中插入他的产品。关键是我希望用户可以添加像“sale”或任何他想要的展示参数。为此,我认为他可以在表单中插入showcase参数,然后像展示表中的列一样添加它。 如果我不知道列名,我该如何显示

修改

好吧,我使用了这段代码,我跳过了第一列,因为它是id ...它没有告诉我除了foreach之后的部分......你知道它会是什么吗?

<form method="post" action="move_showcase.php">
  <?php
    $result   = mysql_query("SELECT * FROM vetrina");
    $element  = mysql_fetch_assoc($result);
    $value    = array(array_keys($element));
    $i        = 0;
      foreach($value as $rowname){

        if($i==0){
          $i++;
          continue;
        }
      ?>
        <div class="input-group">
          <span class="input-group-addon">
            <input name="rowpost[]" type="checkbox" aria-label="...">
          </span>
          <span class="input-group-addon" id="basic-addon3">
            <i class="fa fa-minus-circle" style="color:#d9534f; cursor:pointer;" aria-hidden="true">
            </i>
            <?php
              echo $rowname;
            ?>
          </span>
        </div>
      <?php
      }
  ?>
  <div class="col-lg-6">
    <div class="input-group">
      <span class="input-group-addon">
        <input type="checkbox" name="chkaddshcs">
        Altra Vetrina
      </span>
      <input type="text" class="form-control" name="addrowname" placeholder="Aggiungi Vetrina">
    </div><!-- /input-group -->
  </div><!-- /.col-lg-6 -->
  </form>

1 个答案:

答案 0 :(得分:-1)

MySQL有一个查询来显示所有列名称:

SHOW COLUMNS FROM `vetrina`

您可以像普通表行一样循环返回值。

$ergebnis = mysql_query('SHOW COLUMNS FROM `vetrina`');

while ( $array = mysql_fetch_array( $ergebnis ) ){
  $columns[] = $array['Field'];
}

// remove first name
$columns = array_slice( $columns, 1 );

foreach( $columns as $column ){
 echo $column;
 echo "\r\n";
}

我建议你切换到PHP PDO或MySQLi,因为php_mysql已经过时且不安全。

阅读结果也更有效。