2017-08-07 14 views
0

Evertime画像をアップロードしています.FILENAMEは変更されていません。データベースに挿入されている静的な値(ファイル名)は常に「0.png」ですそれが起こっている、この問題を解決する方法を教えてください。あなたは自分のデータベースに挿入された行のIDを返すmysqli_insert_id機能アップロードしている画像のファイル名が変更されていません

<?php 
session_start(); 
include("../db_connection.php"); 

$seller_id = $_SESSION['seller_id']; 
$trade_name = $_POST ['trade_name']; 
$s_address = $_POST ['s_address']; 
$opening_time = $_POST ['opening_time']; 
$opening_days = $_POST ['opening_days']; 
$order_cutoff = $_POST ['order_cutoff']; 
$seller_delivery_time = $_POST ['seller_delivery_time']; 
$area_covered_delivery = $_POST ['area_covered_delivery']; 
$delivery_fee = $_POST ['delivery_fee']; 

$extension = pathinfo($_FILES['s_image']['name'], PATHINFO_EXTENSION); 

$sql = mysqli_query($db, "UPDATE selling_details 
        SET 
        opening_time = '$opening_time', 
        opening_days = '$opening_days', 
        order_cutoff = '$order_cutoff', 
        seller_delivery_time = '$seller_delivery_time', 
        area_covered_delivery = '$area_covered_delivery', 
        delivery_fee = '$delivery_fee' 
        WHERE seller_id= '" . $_SESSION['seller_id'] . "' "); 
      if ($sql) 
    { 
     $id = mysqli_insert_id($db); 
     $filename = $id.'.'.$extension; 

     if(move_uploaded_file($_FILES['s_image']['tmp_name'], 'upload/'.$filename)) 
    { 
     $sql2 = mysqli_query($db, "UPDATE seller 
       SET 
       trade_name = '".$trade_name."', 
       s_address = '".$s_address."', 
       s_image = '".$filename."' 
       WHERE seller_id= '" . $_SESSION['seller_id'] . "' "); 
     if ($sql2) 
     { 

      header('location: seller_menu.php'); 
     } 
     else 
     { 
      echo "error occured : " . mysqli_error($db); 
     } 
    } 
    else 
    { 
     echo "error occured : " . mysqli_error($db); 
    } 
    } 
    ?> 
+2

あなたはmysqli_insert_id($デシベル)を使用しています。 UPDATEクエリを実行します。これは機能せず、常に0を返します。 – IsThisJavascript

+0

あなたのコードはSQLインジェクションに対して脆弱です。詳細については、[このページ](http://bobby-tables.com/)をご覧ください。 – apokryfos

答えて

2

、とあなたは何(あなただけ更新)値関数リターンを挿入していないので:ここでは

は私のコードです0なので、画像の名前は$id.'.'.$extension ==>0.pngです。

あなたがseller_idを更新し、あなたが$_SESSION['seller_id']内でそれを持っているので、あなたはあなたのコードでそれを使用することができます。

$filename = $_SESSION['seller_id'].'.'.$extension; 
+0

ああ、私はそれを実現しなかった、ありがとう! –

関連する問題