Jes*_*roa 3 php mysql variables
我在 PHP 中有一个函数,可以将值插入到 MYSQL 表中。
function insertRow($db, $new_table, $ID, $Partner, $Merchant)
{
$insert = "INSERT INTO " .$new_table. " VALUES(number, "string", "string")"
$q = mysqli_query($db, $insert);
}
Run Code Online (Sandbox Code Playgroud)
我正在努力定制 VALUES 部分。我需要数字、字符串和字符串分别作为 PHP 中的 ID、合作伙伴和商家变量。
我试过了
function insertRow($db, $new_table, $ID, $Partner, $Merchant)
{
$insert = "INSERT INTO " .$new_table. " VALUES(" .$ID . $Partner . $Merchant . ")";
$q = mysqli_query($db, $insert);
}
Run Code Online (Sandbox Code Playgroud)
以及。但它似乎不起作用,因为对于 SQL 来说,字符串值必须用引号引起来。但如果我更改代码,使其成为 ."$ID" 。“$合作伙伴”。“$商家”。“)”;因此变量根据需要用引号引起来,它们不再是 PHP 变量。如何将 PHP 变量包含在引号中以便我可以正确执行 SQL?
使用串联的其他答案很简单。最好的方法是使用准备好的语句,这将使您的代码更加安全。
$insert = "INSERT INTO " .$new_table. " VALUES(?, ?, ?)";
$q = mysqli_prepare($db, $insert);
mysqli_stmt_bind_param($q, "iss", $ID, $Partner, $Merchant);
mysqli_stmt_execute($q);
Run Code Online (Sandbox Code Playgroud)
进行参数化查询意味着您的查询和数据是分开发送的。这意味着查询的结构已经存在,因此不能被数据中插入的任何其他内容更改,这意味着您可以免受 SQL 注入的影响。
请参阅 PHP 手册:
| 归档时间: |
|
| 查看次数: |
7590 次 |
| 最近记录: |