感谢您办理登机手续。 所以我遇到的问题是一切看起来都很完美但不知何故它仍然没有将值插入数据库。
这是代码:
public function add_post($user_id,$status,$file_parh){
global $pdo;
if(empty($file_parh)){
$file_parh = 'NULL';
}
$query = $pdo->prepare('INSERT INTO `posts` (`post_id`, `user_id_p`, `status`, `status_image`, `status_time`) VALUES (NULL, ?, ?,?, CURRENT_TIMESTAMP)');
$query->bindValue(1,$user_id);
$query->bindValue(2,$status);
$query->bindValue(3,$file_parh);
$query->execute();
header("Refresh:0");
}
这是一个名为“functions.php”的文件,通过另一个文件“main.php”调用
它用在另一个文件中,它使用存储的数据并创建某种“帖子”。
问题是,我自己将值插入数据库并显示帖子但是我无法插入函数。
这是文字区域:
<?php if($check->logged_in() === true){?>
<form action="" method="post" enctype="multipart/form-data">
<div class="c-header">
<div class="c-h-inner">
<ul>
<li><img src="assets/images/write.png" alt="escribir" width="28" height="28"></img><a href="#">Escribir Anuncio</a></li>
<li><input type="file" onchange="readURL(this);" style="display:none;" name="post_image" id="uploadFile"></li>
<li><img src="assets/images/imagen.png" alt="imagen" width="28" height="28"></img><a href="#" id="uploadTrigger" name="post_image">Agregar Imágen</a></li>
</ul>
</div>
</div>
<div class="c-body">
<div class="body-right">
<textarea class="publicar" name="status" placeholder="Escribí tus anuncios acá..." style="resize:vertical;border: 1px solid #ddd"></textarea>
</div>
<div id="body-bottom">
<img src="#" id="preview"/>
</div>
</div>
<div class="right-box">
<ul>
<li><input style="float:right;margin-right:5%" type="submit" name="submit" value="Publicar" class="btn2"/></li>
</ul>
</div>
<script type="text/javascript">
//Image Preview Function
$("#uploadTrigger").click(function(){
$("#uploadFile").click();
});
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#body-bottom').show();
$('#preview').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
</script>
并且插入图像都不起作用..叹气..
提前致谢!!
编辑:
我在这里使用add_post函数:
<?php
include 'core/main.php';
$check = new Main;
$get = new Main;
$send = new Main;
$user_id = $_SESSION['user_id'];
//fetching user data by user_id
$data = $get->user_data($user_id);
// fetching posts from database
$post = $get->posts();
//check user submit data
if(isset($_POST['submit'])){
$status = $_POST['status'];
//checking image if isset
if (isset($_FILES['post_image'])===true) {
//if image is not empty
if (empty($_FILES['post_image']['name']) ===true) {
if(!empty($status)===true){
$send->add_post($user_id,$status);
}
}else {
//checking image format
$allowed = array('jpg','jpeg','gif','png');
$file_name = $_FILES['post_image']['name'];
$file_extn = strtolower(end(explode('.', $file_name)));
$file_temp = $_FILES['post_image']['tmp_name'];
if (in_array($file_extn, $allowed)===true) {
$file_parh = 'images/posts/' . substr(md5(time()), 0, 10).'.'.$file_extn;
move_uploaded_file($file_temp, $file_parh);
$send->add_post($user_id,$status,$file_parh);
}else{
echo 'incorrect File only Allowed with less then 1mb ';
echo implode(', ', $allowed);
}
}
}
} ?>
我评论了“// header(”Refresh:0“);”但是没有错误发生,无论如何它只是刷新网络而没有任何反应。
EDIT2: 我修复了上传按钮,现在我可以上传图片;有趣的是,如果我上传带有文字的图像;它会将图像上传到服务器,但不会将其他数据保存到数据库中。访问数据库可能有问题吗?我很丢失。