フォームを送信して画像を選択しないと、データベースが空白に更新されます。 PHPの知識はあなたがどここの間違った新しい画像がない場合、データベースに古い画像が保存される更新日phy
は、ユーザーが画像を選択しない場合、私はしたいですし、古い画像は私がしようと空白
に代わるものではありませんそれを得た願っていますここに私の完全なPHPコードがある
あなたの助けが必要私のコードはまだ空白になった!
<?php
include("connect.php");
if(isset($_POST['submit']))
{
$id = $_POST['id'];
$form_no = $_POST['form_no'];
$shop_name = $_POST['shop_name'];
$shop_address = $_POST['shop_address'];
$owner_name = $_POST['owner_name'];
$owner_address = $_POST['owner_address'];
$phone = $_POST['phone'];
$m_no = $_POST['m_no'];
$email = $_POST['email'];
$d_o_b = $_POST['d_o_b'];
$d_o_m = $_POST['d_o_m'];
$b_type = $_POST['b_type'];
$reg_no = $_POST['reg_no'];
$coment = $_POST['coment'];
$date = date('y-m-d');
$errors = "";
$plan = $_POST['select'];
$oldpic=$_POST["oldpic"];
if($_FILES['image']['name'] != "" && $errors == "")
{
$file_name = $_FILES['image']['name'];
$file_size = $_FILES['image']['size'];
$file_tmp = $_FILES['image']['tmp_name'];
$file_type = $_FILES['image']['type'];
$file_ext=strtolower(end(explode('.',$file_name)));
$expensions= array("jpeg","jpg","png");
if(!in_array($file_ext,$expensions))
{
$errors="extension not allowed, please choose a JPEG or PNG file.";
}
if($file_size > 2097152)
{
$errors ='File size must be excately 2 MB';
}
if(empty($errors))
{
$new_file_name = uniqid().'.'.$file_ext;
move_uploaded_file($file_tmp,"user/".$new_file_name);
}
}
if(empty($errors))
{
$qreury = "UPDATE members SET
ref_no='$ref_no',shop_name='$shop_name', form_no='$form_no',
shop_address='$shop_address', owner_name='$owner_name',
owner_address='$owner_address', tel_no='$phone', mobile_no='$m_no',
email='$email',dob='$d_o_b',marrige_date='$d_o_m',bussiness_type='$b_type',
reg_no='$reg_no',extra_note='$coment',user_pic='$new_file_name',
plan='$plan',target=(select price from members_plan where id ='$plan') WHERE id='$id'";
$reslt = mysql_query($qreury)or die(mysql_error());
header("location:registered_members.php");
}
elseif(empty($oldpic))
{
$qreury = "UPDATE members SET
ref_no='$ref_no',shop_name='$shop_name', form_no='$form_no',
shop_address='$shop_address', owner_name='$owner_name',
owner_address='$owner_address', tel_no='$phone', mobile_no='$m_no',
email='$email',dob='$d_o_b',marrige_date='$d_o_m',bussiness_type='$b_type',
reg_no='$reg_no',extra_note='$coment',user_pic='$oldpic',
plan='$plan',target=(select price from members_plan where id ='$plan') WHERE id='$id'";
$reslt = mysql_query($qreury)or die(mysql_error());
header("location:registered_members.php");
}
}
?>
1. **廃止され、安全でない** mysql_ *関数。 PHP 5.5以降(2013年)は廃止され、PHP 7(2015年)では完全に削除されました。代わりにMySQLiまたはPDOを使用してください。 ** [あなたは[SQL Injections](http://php.net/manual/en/security.database.sql-injection.php)**を広く読んでいます**そして、実際には[Prepared Statements](http: /php.net/manual/en/mysqli.quickstart.prepared-statements.php)を使用してください。これは上記のMySQLiまたはPDOを使用する場合に使用できます。 –
@MagnusErikssonご返信ありがとうございます。私は完全なコードを更新します! –
さらに進む前に、MysqliまたはPDOとPrepared Statementsを使用してコードをリファクタリングする必要があります。とにかく書き直す必要がある、安全でない日付のコードを意図的に修正するのは時間の無駄です。 –