ذخیره نشدن اطلاعات در دیتابیس
سلام.میخوام اطلاعات رو در دیتابیس ذخیره کنم مرورگر این ارور رو نشونم میده ، لطفا بگید باید چکار کنم
A Database Error Occurred Error Number: 23000/1452 Cannot add or update a child row: a foreign key constraint fails (`blog`.`tbl_post`, CONSTRAINT `tbl_post_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `tbl_user` (`id_user`) ON DELETE SET NULL) INSERT INTO `tbl_post` (`create_time`, `author_id`) VALUES (1434812760, '') Filename: C:/xampp/htdocs/blog/cms-blog/admin/application/models/post_model.php Line Number: 14
7 پاسخ
این پیغام به این خاطره که کوئری تو نتیجه ای رو برنمیگردونه، احتمالاً دستور INSERT ای که نوشتی کوئری نمیزنی. اگه امکانش هست دستورات مربوط به این قسمت رو همینجا بزار.
ببخشید آقا حسین ایندفعه یه مشکل خیلی جدی تری پیش اومده
(. MySQL returned an empty result set (i.e. zero rows). (Query took 0.0004 seconds.)
وقتی داده ای رو ارسال میکنم نه داده ای به جدول ارسال میشه نه خطایی بهم نشون میده
فقط وقتی جدول رو refresh میکنم پیغام بالا با رنگ سبز و تیک سبز رنگ تو جدول نشون میده
هر سری که refresh میکنم فقط اون ثانیه که تو پیغام هست فقط تا 12 ثانیه میره و هی
بر میگرده از اول حالا نمیدونم باید چکار کنم لطفا کمکم کنید
<?php
/**
* postcategory_model
*/
class Postcategory_model extends CI_Model
{
function __construct()
{
parent::__construct();
}
function query($sql)
{
$this->db->query($sql);
}
}
?>
<?php
/**
* category model
*/
class Category_model extends CI_Model
{
function __construct()
{
parent::__construct();
}
function allCategory()
{
return $this->db->get('category')->result_array();
}
}
?>
<?php
/**
* post model
*/
class Post_model extends CI_Model
{
function __construct()
{
parent::__construct();
}
function insert($data)
{
$ins = $this->db->insert('post',$data);
if($ins)
{
return $this->db->insert_id();
}
}
}
?>
مشکل شما اینه که فیلد author__id به جدول tbl__user ارتباط داره، ولی هنگام درج شما مقداری برای author__id مشخص نکردی، همین باعث ایجاد این خطا شده.
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
* post controller
*/
class Post extends MY_Controller
{
function index()
{
$this->load->model('category_model');
$this->template->load('post/index',array('category'=>$this->category_model->allCategory()));
}
function create()
{
$this->load->model('post_model');
$data = array();
$data['title'] = $this->input->post('title');
$data['content'] = $this->input->post('content');
$data['create_time'] = time();
$data['author_id'] = $this->user_id;
$category = $this->input->post('category');
if(!empty($category))
{
$post_id = $this->post_model->insert($data);
if($post_id)
{
$ins_array = array();
foreach ($category as $key => $value) {
$ins_array[] = "('$post_id','$value')";
}
$sql = 'INSERT INTO `tbl_post_category`(`post_id`,`category_id`)VALUES'.implode(',',$ins_array);
$this->load->model('postcategory_model');
$this->postcategory_model->query($sql);
}
}
}
}
?>