テーブルにレコードを挿入するページがあります。私が少し問題を抱えているのは、ユーザーが写真を含めたくないと判断した場合、エラーなしでフォームを送信するにはどうすればよいかということです。または、ファイル フィールドを設定してフォルダからデフォルトの画像を選択し、ユーザーからの選択がない場合にそれをファイル エントリとして設定する方法はありますか?
私は問題を解決することができました。以下はコードです:
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ($_FILES['photo'] && $_FILES['photo']['error'] == 0) {
$set['photo'] = "'" . $pix . "'";
$image = @getimagesize($_FILES['photo']['tmp_name']);
$size = ($_FILES["photo"]["size"]<= 512000);
if($image && $size = TRUE)
$pix= $_FILES['photo']['name'];
$kaboom = explode(".", $pix);
$pixExt = end($kaboom);
$photo= rand()."_".time().".".$pixExt;
$tmpName = $_FILES['photo']['tmp_name'];
$target = "../events/";
$target = $target . $photo;
}
move_uploaded_file($tmpName, $target);
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "pd")) {
$insertSQL = sprintf("INSERT INTO events (title, detail, `date`, photo) VALUES (%s, %s, %s, '$photo')",
GetSQLValueString($_POST['title'], "text"),
GetSQLValueString($_POST['detail'], "text"),
GetSQLValueString($_POST['date'], "text"));
mysql_select_db($database_connMain, $connMain);
$Result1 = mysql_query($insertSQL, $connMain) or die(mysql_error());
$insertGoTo = "confirm.php?user=" . $row_rsadmin['aID'] . "";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}