php - 我仅上传 jpg 和 png 格式并尝试更新已存在的详细信息,但无法在 PHP 中工作

标签 php mysql codeigniter

这是我为更新页面详细信息和图像而编写的代码。这里我只上传jpg和png格式的文件。但它的表现是:

Sorry only png and png formats are allowed.

我被困在那里了。我怎样才能克服这个问题?

<?php
include 'db.php';



$target_dir = "banners/";
$target_file = $target_dir . microtime() . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);

if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== true) {
        echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}

if ($_FILES["fileToUpload"]["size"] > 500000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
if($imageFileType != "png" && $imageFileType != "jpg" && $imageFileType != "jpeg" && $imageFileType != "JPEG"  && $imageFileType != "Jpeg" && $imageFileType != "PNG" && $imageFileType != "JPG") {

    echo "Sorry, only PNG and JPG files are allowed.";
    $uploadOk = 0;
}

if ($uploadOk == 0) {
    echo "Sorry, your file was not uploaded.";

} else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
    } else {
        echo "Sorry, there was an error uploading your file.";
    }
}
if($_FILES["fileToUpload"]["name"]!=''){
$sql = "UPDATE `business_profile` SET `bs_name`='".$_POST['bsname']."',`bs_cat`='".$_POST['bscat']."',`mobile`='".$_POST['mobile']."',`email`='".$_POST['email']."',`location`='".$_POST['location']."',`addr`='".$_POST['addr']."',`image`='$target_file',`description`='".$_POST['desc']."' WHERE id='".$_POST['id']."'";
}else{
    
   $sql = "UPDATE `business_profile` SET `bs_name`='".$_POST['bsname']."',`bs_cat`='".$_POST['bscat']."',`mobile`='".$_POST['mobile']."',`email`='".$_POST['email']."',`location`='".$_POST['location']."',`addr`='".$_POST['addr']."',`description`='".$_POST['desc']."' WHERE id='".$_POST['id']."'";
 
    
}
if (mysqli_query($conn, $sql)) { ?>
    
    	<SCRIPT LANGUAGE='JavaScript'>
    window.alert('Profile Added Succesfully')
    window.location.href='http://smartpuppies.in/admin/dashboard';
    </SCRIPT>
    
  <?php  }else{ ?>
        	<SCRIPT LANGUAGE='JavaScript'>
    window.alert('Error In adding , please try again. ')
    window.location.href='http://smartpuppies.in/admin/dashboard';
    </SCRIPT>
        
    <?php }



?>

这是我的 fo2rm。在这里,我有企业详细信息,例如企业名称、类别、商店形象和商店的新形象

<form class="form-horizontal form-label-left" action="http://smartpuppies.in/some" method="POST" enctype="multipart/form-data">
            
                    
                    <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Business Name</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="bsname"  value="<?php echo $row_req['bs_name']; ?>" type="text" required />
                      </div>
                    </div>  
                    
                    
                        <!--<div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Business Category</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="bscat"  value="<?php echo $row_req['bs_cat']; ?>" type="text" required/>
                      </div>
                    </div> --->        
               
               <input type="hidden" name="id" value="<?php echo $row_req['id']; ?>" />
                       
                      
                              <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Phone No</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="mobile"  value="<?php echo $row_req['mobile']; ?>" type="text"/>
                      </div>
                    </div> 
                    
                    
                          <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Email Id </label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="email"  value="<?php echo $row_req['email']; ?>" type="text"/>
                      </div>
                    </div> 
                        
                        
                                    <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Location</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="location"  value="<?php echo $row_req['location']; ?>" type="text"/>
                      </div>
                    </div> 
                    
                    
                    
                                <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Adress</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="addr"  value="<?php echo $row_req['addr']; ?>" type="text"/>
                      </div>
                    </div> 
                                <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Home Delivery </label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name=""  value="<?php echo $row_req['del_option1']; ?>Rs,<?php echo $row_req['del_option2']; ?>Rs,<?php echo $row_req['del_option3']; ?>Rs" type="text" readonly/>
                      </div>
                    </div> 
                                <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Description  </label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input class="form-control col-md-7 col-xs-12" name="desc"  value="<?php echo $row_req['description']; ?>" type="text"/>
                      </div>
                    </div> 
                    
                     <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Store Image</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <a href="http://www.smartpuppies.in/<?php echo $row_req['image'];?>" class="acustom" target="_blank"> Click  Me </a>
                      </div>
                    </div>
                    
                    
                     <div class="form-group">
                      <label for="" class="control-label col-md-3 col-sm-3 col-xs-12">Upload Image</label>
                      <div class="col-md-6 col-sm-6 col-xs-12">
                        <input  type="file" name="fileToUpload" class="margtopbottom"/>


                      </div>
                    </div>
                    
                                  
                                          
    <div class="text-center" >           

<input name="submit" value="Update" type="submit"/>
</div>
                  </form>

最佳答案

更改以下内容

if($imageFileType != "png" && $imageFileType != "jpg" && $imageFileType != "jpeg" && $imageFileType != "JPEG"  && $imageFileType != "Jpeg" && $imageFileType != "PNG" && $imageFileType != "JPG") {

    echo "Sorry, only PNG and JPG files are allowed.";
    $uploadOk = 0;
}

进入

$allowed =  array('png' ,'jpg','jpeg');
$imageFileType = strtolower($imageFileType);
if(!in_array($imageFileType,$allowed) ) {
    echo "Sorry, only PNG and JPG files are allowed.";
    $uploadOk = 0;
}

关于php - 我仅上传 jpg 和 png 格式并尝试更新已存在的详细信息,但无法在 PHP 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50757213/

相关文章:

mysql - 连接引用另一个表的列两次的表

php - 如何在明年的周末结束时获得上周的记录

PHP:为数组中的每个帖子添加评论计数

jQuery 选择选项 - CodeIgniter

java - 使用 Java 发送 POST 数据

php - 如何获取一个开放api站点的所有数据

php - 设置php mysql的开始时间和结束时间

mysql - Laravel 查询生成器高级 wheres AND, OR

javascript - 如何从选择输入字段的多个选项中获取值

php - 识别表单中的 MySQL ID