我正在尝试执行此INSERT语句,但未执行。我回显了$ query字符串,看起来还可以。尝试使用mysqli_query($connect, $query)
执行时,什么也没有发生,只是一个空白屏幕。
$query = "INSERT INTO spservices('service_no', 'service_email', 'service_type', 'service_exit_node', 'service_billing', 'service_next_due', 'service_download', 'service_password')
VALUES('$serviceNo','$mail', '$serviceType', '$enode', '$serviceBilling','$nextDue','Pending until payment confirmed','$servicePass')";
if (mysqli_query($connect, $query)) {
//MY CODE SENDS AN EMAIL HERE
}
答案 0 :(得分:0)
在SQL中,带单引号的字符串被视为用户输入,而不是表/字段名称。
因此,更正后的SQL:
$query = "INSERT INTO spservices(service_no, service_email, service_type, service_exit_node, service_billing, service_next_due, service_download, service_password)
VALUES('$serviceNo','$mail', '$serviceType', '$enode', '$serviceBilling','$nextDue','Pending until payment confirmed','$servicePass')";
您可以使用反引号运算符
来代替字段名中的单引号(`)围绕列/字段名称。
当您的字段名称恰好是保留的SQL字时,这很有用。
例如。
SELECT `select` FROM users