列名称和值获取PDO

用户名

我尝试获取表中列的值。首先,我想取桌子。然后我确实喜欢:

$sql = $dbh->query("DESCRIBE `players` ;");
foreach ($sql->fetchAll(PDO::FETCH_NUM) as $k) {
    echo 'Table:'  . $k[0]. '<input type="text" values=""><br>  ' ;
}

那么,现在在相同的foreach中为每个表获取价值的最佳方法是什么?

解决方案我如何:

function getColumnValue($column,$name) {
        global $dbh;
        $sqll = ("SELECT `$column` FROM `players` WHERE `name`='$name' ");
        $sthh = $dbh->prepare($sqll);
        $sthh->execute();
        return $sthh->fetch(PDO::FETCH_ASSOC);
}


foreach ($sql->fetchAll(PDO::FETCH_NUM) as $k) {
    $test = getColumnValue($k[0],'Test');
    echo 'Table: '.$k[0] .' <input type="text" value="'.$test[$k[0]].'" style="color:#000;"> <br> ';
}
arkascha

您可以通过以下两种方法执行此操作:

  1. 正如我在对问题的评论中所解释的那样,您使用了两个单独的查询:一个用于查询表格描述,而另一个用于获取表格内容(行)。您需要两个(实际上是三个)循环来迭代结果,大致是这样的:

    • 获取表描述(“ DESCRIBE TABLE表名”)
      • 遍历结果中的列
      • 输出单列名称
    • 获取表的内容(“ SELECT * FROM tablename ...”)
      • 遍历结果中的行
      • 遍历每一行内的列
        • 当前行和列的输出单元格内容
  2. 您可以为此使用联合查询,尽管这很丑陋,并不能真正简化代码的结构:

    选择“ colname1” AS colname1,“ colname2” AS colname2,“ colname3” AS colname3 FROM表名

    联盟

    SELECT colname1,colname2,colname3 FROM表名

    该单个查询将两个包含的单独子查询的结果串联在一起,因此它给出了您最初要求的内容。您只需要确保在两个子查询中查询相同数量和类型的列即可。但是请注意,这不是一种很好的样式,因为它很难调试和维护。

通常,获取列名称以输出它们是否真的是一个好主意值得怀疑。我会三思而后行:将存储体系结构和可视化结合到一个单独的层中,这是个坏主意:以后需要进行更改时,您将遇到大问题。通常,出于充分的原因,应该将那些不同的方面保持分开。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PDO获取ID和名称

来自分类Dev

返回列名称和不同的值

来自分类Dev

从表中选择列名称和值

来自分类Dev

如何从单元格编辑网格中获取“列名称”和“先前值”

来自分类Dev

获取参数的名称和值

来自分类Dev

如何获取mysql列名和值

来自分类Dev

获取按名称在DataFrame中的值排序的列名

来自分类Dev

将值Json数据获取为系列名称Highchart

来自分类Dev

如何基于Pandas python中的值获取多个列名称?

来自分类Dev

通过行和列名称从DataTable获取值

来自分类Dev

获取特定行的列名称和Excel中的匹配列

来自分类Dev

熊猫数据透视表列名称和值列名称要删除

来自分类Dev

将列名称和值的列表传递给Psycopg

来自分类Dev

使用mutate_at和前缀列名称比较值

来自分类Dev

根据条件提取列名称和特定值

来自分类Dev

在数据框中打印列名称和值

来自分类Dev

Oracle 10g:取消透视列名称和值

来自分类Dev

获取对象的值和属性名称

来自分类Dev

获取所有 cookie 的名称和值

来自分类Dev

获取MySQL触发器的列名和值

来自分类Dev

使用Codeigniter和mysql获取行值作为列名

来自分类Dev

如何获取唯一ID和唯一值的列名

来自分类Dev

获取MySQL触发器的列名和值

来自分类Dev

子集数据框架以获取行名,列名和值

来自分类Dev

尝试通过列名和进程名获取错误值

来自分类Dev

返回值列名称

来自分类Dev

打印空值列名称

来自分类Dev

如何从PDO的fetchAll结果中获取列名?

来自分类Dev

PDO按列名获取结果索引