【发布时间】:2013-06-14 20:51:14
【问题描述】:
我有一个带有上传字段的表单,它工作正常。它上传并且一切都很好,除了上传字段为空时。数据库表中的字段也变为空白,其中没有任何内容,甚至没有旧图像条目!
我的表单:
<form enctype="multipart/form-data" action="add.php" method="POST">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name = "email"><br>
Phone: <input type="text" name = "phone"><br>
Photo: <input type="file" name="site_logo"><br>
<input type="submit" value="Add">
</form>
PHP 代码:
<?php
$target = "../upload/";
$target = $target . basename($_FILES['site_logo']['name']);?>
<?php
move_uploaded_file($_FILES['site_logo']['tmp_name'], $target);
// output a list of the fields that had errors
if (!empty($errors)) {
echo "<p class=\"errors\">";
echo "Please review the following fields:<br />";
foreach($errors as $error) {
echo " - " . $error . "<br />";
}
echo "</p>";
}
?>
查询:
$site_logo=($_FILES['site_logo']['name']);
$query = "UPDATE ss_settings SET
site_logo = '{$site_logo}'
WHERE id = 1 ";
$result = mysql_query($query, $connection);
我已经设置了数据库连接和更新查询以及所有内容。刚刚发布了流程代码,所以你们很清楚。我只是希望它在字段为空时什么都不做。
【问题讨论】:
-
那么为什么不实现一个
if empty函数来阻止它进一步发展呢? -
我尝试过这样做,但不起作用。你能写代码吗?也许我做错了
-
如果您使用相同的表格来编辑文本数据并且不需要上传文件,您应该发布您的数据库代码;出现问题时如何构建查询。
-
您好,在向数据库输入数据之前,您应该使用 js valiadtion 来检查输入是否存在,并检查页面上是否存在 post/get 数据,即检查 isset 和空条件
标签: php forms file-upload