一部の入力とともにデータベースに画像を保存しようとしましたが、このメッセージ 'SQLSTATE [23000]:Integrity constraint violation :1048列 'image_url'をnullにすることはできません。ここでSQLSTATE [23000]:整合性制約違反:1048カラム 'image_url'をnullにすることはできません
ソースコードである:入力を処理するための
PHPコード:
<?php
if($_POST){
//$ef = $_POST["exp_file"];
if($_POST["heading"] == '' && $_POST["myimage"] =='' && $_POST["text"] =='')
{
echo '<div style="padding:7px; margin-top:5px; margin-bottom:5px;" id="good" class="alert-warning">Check inputs for empty values.</div>';
}else{
try {
$head = $mysqli->real_escape_string($_POST["heading"]);
$txt = $mysqli->real_escape_string($_POST["text"]);
$time = time();
$upload_image=$_FILES["myimage"]["name"];
$folder="uploads/";
move_uploaded_file($_FILES["myimage"]["tmp_name"], "$folder".$_FILES["myimage"]["name"]);
$stmt = $db->prepare("insert into posts(
heading,
post_desc,
image_url,
user,
post_date
) VALUES(:head,:pd,:iu,:user,:dat)");
$stmt->execute(array(
':head'=>$head,
':pd'=>$txt,
':iu'=>$upload_image,
':user'=>$user,
':dat'=>$time
));
//Saved
echo '<div style="padding:7px; margin-top:5px; margin-bottom:5px;" id="good" class="alert-success">Published Successfully.</div>';
//$_POST = array();
} catch(PDOException $e) {
echo $e->getMessage();
}
}
}
?>
jQueryのそれの一部:
<script>
/* must apply only after HTML has loaded */
$(document).ready(function() {
$("#contact_form").on("submit", function(e) {
var postData = $(this).serializeArray();
var formURL = $(this).attr("action");
$.ajax({
url: formURL,
type: "POST",
data: postData,
success: function(data, textStatus, jqXHR) {
$('#contact_dialog .modal-header .modal-title').html("Result");
$('#contact_dialog .modal-body').html(data);
$("#submitForm").remove();
},
error: function(jqXHR, status, error) {
console.log(status + ": " + error);
}
});
e.preventDefault();
});
$("#submitForm").on('click', function() {
$("#contact_form").submit();
});
});
</script>
最後に、HTML
<div class="modal fade" id="contact_dialog" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title"><span class="glyphicon glyphicon-file"></span> Create an Article</h4>
</div>
<div class="modal-body">
<form id="contact_form" class="form col-md-12 center-block form-signin" action="article/publish.php" method="post" autocomplete="off" enctype="multipart/form-data">
<div class="row">
<div class="col-lg-12">
<div class="form-group">
<input type="text" class="form-control input-lg" placeholder="Heading" name="heading" id="heading" value="">
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div class="form-group">
<input type="file" class="form-control file_image" placeholder="Upload a file" name="myimage" id="files" value="">
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div class="form-group">
<textarea class="form-control input-lg textarea" name="text" id="text" cols="120" rows="9" wrap="virtual"></textarea>
</div>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" id="submitForm" class="btn btn-default">Publish</button>
</div>
</div>
</div>
</div>
エラーまたは平均?そして私は間違って何をしているのですか?
ありがとうございました...今すぐコードを変更します。貴重な時間をありがとう。 –
@FagbemiAyodeleよろしくお願いします! –
@FagbemiAyodele(php)アプリケーションでの例外処理のワークフロー(例外の定義、再利用、例外のコーディング、例外の順序付けなど)について、私は以前から答えを書いていました。それは大きいです:-))しかし、簡単に従う。私は特にPDO例外処理を示しました。興味のある方は:[PDO :: prepare()とPDOStatement :: execute()+例外処理の一般化についての例外処理](https://stackoverflow.com/questions/43691356/cant-update-or- delete-dynamically-with-twig-and-php-oop/43704962#43704962) –