2016-11-16 3 views
1

画像にデータを挿入するコードが必要です。情報を挿入すると、イメージはイメージとイメージ名が空になる以外はテーブルに保存されます 問題は何か分かりませんか?なぜデータがDBに挿入されるのですか?画像と画像の名前が挿入されていません

画像の種類がありLONGBLOBと画像の名前はvarchar型

ある

addEmployee.php

<?php 
session_start(); 
require 'common.php'; 
$connection = new mysqli($localhost , $dusername , $dpassword,$database); 

if ($connection->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

//echo "Connected successfully"; 
echo "<pre>"; 
//$EmpID = $_POST['EmpID']; 
$SSN = $_POST['SSN']; 
$Fname = $_POST['Fname']; 
$Lname = $_POST['Lname']; 
$PhoneNumber = $_POST['PhoneNumber']; 
$Salary = $_POST['Salary']; 
$Email = $_POST['Email']; 
$JobTitle = $_POST['JobTitle']; 
$Password = $_POST['Password']; 
$image= addslashes(file_get_contents($_FILES['image']['tmp_name'])); 
$name = addslashes($_FILES['image']['imageName']); 

$query = "INSERT INTO `employee`(`SSN`, `Fname`, `Lname`, `PhoneNumber`, `Salary`, `Password`, `JobTitle`,`Email` , `image` , `name`)"; 
$query.=     "VALUES('$SSN','$Fname','$Lname','$PhoneNumber','$Salary','$Password','$JobTitle' ,'$Email' ,'$image' ,'$name')"; 

$result = mysqli_query($connection, $query); 

if (!$result) 
{ 
    echo "1"; 
    die("Query failed". mysqli_errno($connection)); 
} 
else { 
    header("location: admin.html"); 
} 
?> 
+0

ファイルをデータベースに保存しないでください。 http://stackoverflow.com/a/38829952/267540 – e4c5

+0

コードディレクトリにフォルダを作成し、そこにアップロードしたファイルを移動してください。アップロードしたファイルの詳細(名前)を保存するだけでファイルを移動できます。データベース。 –

+0

ファイルと名前の内容を確認しましたか? $ image変数と$ name変数に格納します。 –

答えて

0

デシベルで画像を保存することは議論の余地の練習であっても、私はあなたにいくつかの問題を表示してみてくださいwoul。 1. $ _FILESには 'imageName'キーが含まれておらず、名前のみです。 http://php.net/manual/ro/features.file-upload.post-method.php を参照してください。2.イメージフィールドのタイプがイメージコンテンツ全体を格納するのに十分な大きさであることを確認します($ imageのstrlenをダンプします)。 blobを使用します。また、その投稿があなたにイメージを送信していることは確かですか? 3. echo "pre"を削除します。リダイレクトに使用するheadersディレクティブをスクランブルします。

SQLエラー番号とは何ですか?また、セキュリティ上の問題にも注意してください。画像には、実行可能コードのチャンクが挿入されている可能性があります。最も安全な方法(あなたの場合)は、そのクローンを作成することです(想像する)。

+0

ご意見ありがとうございます。私はエラー番号を取得しません。すべての情報は、イメージとイメージ名を除いてデータベースに保存されます – Mohammed

関連する問題