【发布时间】:2017-04-04 15:13:10
【问题描述】:
所以我有以下代码用于向受访者表添加一行,除了尝试在Brand 中添加值时,所有代码都可以正常工作:
$brand = 'Central';
function new_respondent() {
global $link;
$proc = mysqli_prepare($link, "INSERT INTO trespondent (brand, code) VALUES (?, uuid());");
mysqli_stmt_bind_param($proc, "s", $brand);
mysqli_stmt_execute($proc);
$respondent_id = mysqli_insert_id($link);
mysqli_stmt_fetch($proc);
mysqli_stmt_close($proc);
mysqli_clean_connection($link);
}
此代码有效(在一定程度上)在表中添加一行并添加 UUID 没有问题,但 brand 将作为 NULL 进入 - 如果我遗漏了什么,我正在努力解决这里很明显!
欢迎提出任何建议。
【问题讨论】:
-
你在滥用全局变量。只需将内容作为函数参数传递即可。
-
function new_respondent()=>function new_respondent($link, $brand)并传递这些参数。global是一个不好的方法。 -
'你在滥用全局变量。' - 你能详细说明吗?
-
@Homer_J Qirel 只是举了一个例子。