我的数据库有一个带有image列的配置文件表。如果用户不在web表单中插入其图像URL,我希望使用默认值设置默认图像。
列定义:
profile_image varchar(255) NOT NULL DEFAULT 'http://i.imgur.com/U.png'我已经在phpmyadmin中插入了默认的图像URL,但每次我在web表单上单击submit时,webform中的每个键都会存储在profile表中,但image列是空的。
我知道我可以通过在web表单中添加图像URL来实现这一点,但我想通过mysql实现这一点。
这个问题得到了解决,因为我在php insert处插入了图像,但是如何使用null值让mysql知道我发送的是NULL?这是使用Null的正确方法吗?
$nl = NULL;
$query = "INSERT INTO `student` (
`name` ,
`emel` ,
`address` ,
`profile_image`
)
VALUES (
'$name', '$emel', '$add', '$nl');";上面的代码不能工作。profile_image列仍然为空。
发布于 2012-10-07 16:24:59
你需要做两件事:
1.)为图像指定列的默认值,可能类似于default.jpg
(我相信你已经这样做了)
2.)确保您的php脚本在插入/修改时提供了一个null value (不为空)或don't specify the value at all,这样mysql就知道它需要使用默认值。或者,您可以处理php脚本中的逻辑,以提供默认图像的url。我会避免在SQL中使用一些复杂的函数,因为您的逻辑可能会随着时间的推移而变化,SQL server实际上不应该负责处理应用程序逻辑。
https://stackoverflow.com/questions/12767187
复制相似问题