gpt4 book ai didi

php - 参数传递 (PHP)

转载 作者:行者123 更新时间:2023-12-02 07:51:15 24 4
gpt4 key购买 nike

我正在尝试在数据库中选择一条记录。我对函数 runSelect 有问题(函数是选择数据库中的记录)我相信这可能与我在函数中传递变量的方式有关。

    function select($pUserData){
echo "I am in function select." . "<br/>";
// Create the SQL query
$sqlQuery = "SELECT * FROM tablName WHERE id= " . $pUserData[0];

$con = openConnection();

$result = $con->query($sqlQuery);

$row = $result->fetch_row();

echo "hello";

echo "ID: " . $row[0] . "<br />";
echo "First Name: " . $row[1] . "<br />";

// Close connection
closeConnection($con);
}

function openConnection() {
$connection = new mysqli("localhost", "userName", "password", "databaseName");
if ( mysqli_connect_errno() ) {
echo "Error: Could not connect to database. Please try again later. " . "<br/>";
}

echo "in openConnection" . "<br/>";

return $connection;
}

function closeConnection($pCon) {
$pCon->close();
}
?>

最佳答案

  1. 您的代码对 SQL 注入(inject)开放...
  2. 只提供函数需要的数据,而不是整个输入数组。
  3. 如果您将来有多个查询,则为每个查询连接和断开与数据库的连接效率很低。让 PHP 在退出时断开与数据库的连接,直到需要对其进行微控制(可能永远不会)并且您可以更好地管理资源。
  4. 在程序开始时使用 var_export 或 var_dump 打印 $_POST 的内容。
  5. 在 runSelect 函数中打印 $result->num_rows。
  6. 像这样添加几行:

    echo '<p>' . __LINE__ . '</p>';

关于php - 参数传递 (PHP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3654734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com