-1
と、データベース内のプレビューファイルおよびストア私がしようとしている次のスクリプト使用:アップロードした画像 アップロードおよびPHP
- を
- データベースに名前をロードします。
すべて正常に動作しますが、イメージ名はデータベースにアップロードされません。私はエラーを理解していない、誰かが私を助けることができますか? ありがとうございます。
<!--script view preview image-->
<script type="text/javascript">
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#image')
.attr('src', e.target.result)
.width(200)
.height();
};
reader.readAsDataURL(input.files[0]);
}
}
</script>
<!-- /script view preview image-->
<!--html form-->
<form action="nuovo-articolo.php?start=1" method="POST" enctype="multipart/form-data">
<div class="row">
<div class="col-xs-4 col-md-4">
<label>Upload image</label>
<label>(Max 300Kb - jpg, jpeg, png)</label>
<input class="form-control" type="file" name="image" onchange="readURL(this);" />
</div><!-- /upload image -->
<div class="col-xs-4 col-md-4">
<label>Anteprima</label>
<p><img id="image" src="#" alt="Immagine" /></p>
</div><!-- /preview image -->
</div><!-- /row -->
<div class="row">
<div class="col-xs-1 col-md-1">
<input type="submit" class="btn btn-success" value="Inserisci" name="submit" />
</div><!-- /submit -->
</div><!-- /row -->
</form><!-- /form -->
<!--html form-->
<!-- php -->
<?php
//store img name file into database
if (!empty ($_GET["start"])) {
$sql = "INSERT INTO articoli
(image)
VALUES
(
'".$_POST["image"]."'
)";
//upload file into folder
if ($conn->query($sql) === TRUE) {
if(isset($_FILES['image'])){
$errors= array();
$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('.',$_FILES['image']['name'])));
//file extension check
$expensions= array("jpeg","jpg","png");
if(in_array($file_ext,$expensions)=== false){
$errors[]="I formati accettati sono JPEG o PNG.";
}
//file dimension check
if($file_size > 301000){
$errors[]='La dimensione del file non deve superare 300Kb';
}
//move file into folder
if(empty($errors)==true){
move_uploaded_file($file_tmp,"../../uploads/articoli/".$file_name);
echo "File caricato";
}else{
print_r($errors);
}
}
//redirect
header('Location: giacenze.php');
} else {
echo "Errore: " . $sql . "<br>" . $conn->error;
}
}
?>
<!-- /php -->
とエラーは何ですか? – ino
IFステートメントが条件を満たしていますか? URLに「開始」属性が含まれていますか? – ino
投稿に書かれているように、私はプレビューを表示し、画像はフォルダには挿入されますが、データベースには挿入されません。 私はセキュリティのために開始条件を追加しました。これは確かにurlにあります。フォームタグのaction属性を参照してください。 イメージ名がデータベースに挿入されていない理由を理解できません –