我想请一些帮助。我已经使用CodeIgniter创建了一个表单,我可以在其中编写帖子,我想要做的是添加上传此图片的图像的功能。
一开始我想在我的表单中添加一个输入字段,我可以上传文件,所以我可以在前端的内容(文本)上方显示它们,但是这是一个非常快速简单的解决方案,可能不那么灵活。所以我想使用tinymce的“插入/编辑图像”按钮。
我之前没有这样做过,所以如何通过tinymce上传图像或图像,以便它们出现在前端的文本中?
编辑这是我的代码。
这是我的观点:
<?php echo form_open_multipart(); ?>
<div>
<label for="title">Title *</label>
<?php echo form_input('title', html_escape(set_value('title', $article->title))); ?>
</div>
<div>
<label for="file">Upload image</label>
<?php echo form_upload('file'); ?>
</div>
<div>
<label for="body">Body *</label> // has TinyMce
<?php echo form_textarea('body', strip(set_value('body', $article->body))); ?>
</div>
<div>
<?php echo form_submit('save', 'Save'); ?>
</div>
<?php echo form_close(); ?>
这是我的模特:
public function save($id = null){
$post_data = array(
'title' => $this->input->post('title'),
'file' => $this->input->post('file'),
'body' => $this->input->post('body'),
);
return parent::save($post_data, $id);
}
这是控制器:
public function article($id = null){
....
$this->form_validation->set_rules($this->article_model->rules);
// Process the form
if ($this->form_validation->run() == TRUE) {
$this->article_model->save($id);
redirect('admin/article');
}
}
答案 0 :(得分:0)
在我看来,我认为您应该使用单独的字段将图像上传到服务器,因为这可以帮助您控制它们,调整大小,确定文件名和上传路径
您可以使用form_open_multipart()Codeigniter功能上传文件
然后你可以创建一个名为image的数据库表字段并将上传的文件名插入其中
然后检索你可以
的帖子<img src="<?php echo $post->image; ?>" />
<p><?php echo $post->content ?></p>
答案 1 :(得分:0)
有两种方法。
您可以在TinyMCE外部保留上传字段并使用ajax / iframe文件上传。
OR
编写一个能够上传图像的TinyMCE插件。
请注意,这两种方法都需要付出一些努力才能实现。
就处理服务器端的文件而言,您可以通过Codeigniter Docs开始使用。