使用php函数的参数作为SQL查询中的列名

斯蒂芬·B。

这是用于学校项目。我是PHP和MySQL的新手。我试图用一个字符串参数在PHP中编写一个函数,该参数将成为该函数内部的prepare()语句中使用的SQL查询的列名。

这是代码:

function checkCredentials($dbFieldToCheck) {
  $statement = $conn->prepare("SELECT id FROM user WHERE ".$dbFieldToCheck." = ? AND password = PASSWORD(?)");
  if (!$statement) die("Prepare failed: (" . $conn->errno . ") " . $conn->error);
  $statement->bind_param("ss", $_POST["username/email"], $_POST["password"]);
  $statement->execute();
  $result = $statement->get_result();
  $row = $result->fetch_assoc();
  return $row;
}

然后,我在两个不同的变量中两次调用此函数:

$row1 = checkCredentials('email');
$row2 = checkCredentials('username');

最后,我对这两个变量进行了处理(我猜这里没有用)。

我尝试了不同的方式在SQL语句中写入参数,也尝试了不同的方式在函数调用中写入参数。现在我什至开始认为我的函数根本没有被调用...

如果我只是用硬编码的列名在函数内部执行两次代码,那么我想要实现的目标就可以实现。但这不是很好:)

很感谢任何形式的帮助。谢谢!

洛根·韦恩(Logan Wayne)

将提交的POST数据和连接变量添加到函数的参数中调用函数时,它将如下所示:

checkCredentials($dbFieldToCheck, $conn, $_POST["username/email"], $_POST["password"]);

您的函数将如下所示:

function checkCredentials(string $dbFieldToCheck, $conn, $username, $password) {

    $statement = $conn->prepare("SELECT id FROM user WHERE ".$dbFieldToCheck." = ? AND password = PASSWORD(?)");
    if (!$statement) die("Prepare failed: (" . $conn->errno . ") " . $conn->error);
    $statement->bind_param("ss", $username, $password);
    $statement->execute();
    $result = $statement->get_result();
    $row = $result->fetch_assoc();
    return $row;

}

您可以用来global在函数内部调用变量(有关使用的弊端,请参见此处global)。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用php函数的参数作为SQL查询中的列名

来自分类Dev

如何在列名作为函数参数出现的Oracle SQL中优化查询?

来自分类Dev

在 sql 查询中使用变量作为列名

来自分类Dev

SQL-使用列名的值作为参数

来自分类Dev

在使用点表示法的函数中包括列名作为参数

来自分类Dev

Python Pandas:应用使用列名作为命名参数的函数

来自分类Dev

使用主查询的结果作为子查询中的列名

来自分类Dev

是否可以将SQL查询条件作为参数发送给RoR中的函数?

来自分类Dev

如何使用 date('Ymd H:i:s'); 函数值作为php中的列名?

来自分类Dev

在SQL查询中使用Python列表作为列名

来自分类Dev

SQL:使用函数作为存储过程的参数

来自分类Dev

使用PHP变量作为JavaScript函数的参数

来自分类Dev

在R中:将列名作为参数传递,并在dplyr :: mutate()和lazyeval :: interp()的函数中使用它

来自分类Dev

如何执行将列名作为参数传递给plpgsql函数的查询?

来自分类Dev

使用匹配组作为函数中的参数

来自分类Dev

使用{{this}}作为Meteor中辅助函数的参数

来自分类Dev

使用函数作为PHP中另一个函数的参数

来自分类Dev

PHP函数参数作为参数

来自分类Dev

PHP函数参数作为参数

来自分类Dev

查询结果作为嵌套查询中的列名

来自分类Dev

pgr_createTopology() 函数中的参数作为查询

来自分类Dev

php函数作为函数的参数

来自分类Dev

在表值函数中使用选择查询作为参数

来自分类Dev

document.getElementById() 作为 PHP SQL 查询参数

来自分类Dev

动态 SQL 查询作为参数

来自分类Dev

PHP函数使用准备好的SQL语句-使用爆破输入以逗号分隔的数组值作为函数的参数

来自分类Dev

PHP函数使用准备好的SQL语句-使用爆破输入以逗号分隔的数组值作为函数的参数

来自分类Dev

使用函数作为参数的函数

来自分类Dev

在while循环中使用php字符串作为javascript函数中的参数

Related 相关文章

  1. 1

    使用php函数的参数作为SQL查询中的列名

  2. 2

    如何在列名作为函数参数出现的Oracle SQL中优化查询?

  3. 3

    在 sql 查询中使用变量作为列名

  4. 4

    SQL-使用列名的值作为参数

  5. 5

    在使用点表示法的函数中包括列名作为参数

  6. 6

    Python Pandas:应用使用列名作为命名参数的函数

  7. 7

    使用主查询的结果作为子查询中的列名

  8. 8

    是否可以将SQL查询条件作为参数发送给RoR中的函数?

  9. 9

    如何使用 date('Ymd H:i:s'); 函数值作为php中的列名?

  10. 10

    在SQL查询中使用Python列表作为列名

  11. 11

    SQL:使用函数作为存储过程的参数

  12. 12

    使用PHP变量作为JavaScript函数的参数

  13. 13

    在R中:将列名作为参数传递,并在dplyr :: mutate()和lazyeval :: interp()的函数中使用它

  14. 14

    如何执行将列名作为参数传递给plpgsql函数的查询?

  15. 15

    使用匹配组作为函数中的参数

  16. 16

    使用{{this}}作为Meteor中辅助函数的参数

  17. 17

    使用函数作为PHP中另一个函数的参数

  18. 18

    PHP函数参数作为参数

  19. 19

    PHP函数参数作为参数

  20. 20

    查询结果作为嵌套查询中的列名

  21. 21

    pgr_createTopology() 函数中的参数作为查询

  22. 22

    php函数作为函数的参数

  23. 23

    在表值函数中使用选择查询作为参数

  24. 24

    document.getElementById() 作为 PHP SQL 查询参数

  25. 25

    动态 SQL 查询作为参数

  26. 26

    PHP函数使用准备好的SQL语句-使用爆破输入以逗号分隔的数组值作为函数的参数

  27. 27

    PHP函数使用准备好的SQL语句-使用爆破输入以逗号分隔的数组值作为函数的参数

  28. 28

    使用函数作为参数的函数

  29. 29

    在while循环中使用php字符串作为javascript函数中的参数

热门标签

归档