Php Joomla自定义组件中的基本图像上载
我正在尝试将图像上传功能添加到我正在创建模型的视图中。我在这里尝试了许多示例代码,但无法获得文件的完整路径。我的代码如下所示:Php Joomla自定义组件中的基本图像上载,php,image,joomla,joomla2.5,Php,Image,Joomla,Joomla2.5,我正在尝试将图像上传功能添加到我正在创建模型的视图中。我在这里尝试了许多示例代码,但无法获得文件的完整路径。我的代码如下所示: public function submit() { jimport ( 'joomla.filesystem.file' ); // Check for request forgeries. JRequest::checkToken () or jexit ( JText::_ ( 'JINVALID_TOKEN' ) ); // I
public function submit() {
jimport ( 'joomla.filesystem.file' );
// Check for request forgeries.
JRequest::checkToken () or jexit ( JText::_ ( 'JINVALID_TOKEN' ) );
// Initialise variables.
$app = JFactory::getApplication ();
$model = $this->getModel ( 'createaction' );
// Get the data from the form POST
$data = JRequest::getVar ( 'jform', array (), 'post', 'array' );
echo $data['image']; <-- here
$createdItem = $model->createItem ( $data );
if ($createdItem) {
$redirect = JRoute::_ ( 'index.php?option=com_akcehned&view=actions', false );
$this->setRedirect ( $redirect, "Akce byla vytvořena" );
} else {
echo "<h2>Omlouváme se, ale něco se stalo špatně</h2>";
}
return true;
}
$jinput = $app->input;
$files = $jinput->files->get('jform');
$file = $files['image'];
echo $file;
echo $file['tmp_name'];
但这对我也不起作用。我只得到空值。有人能给我一个工作代码块,我从其他输入和上传文件的完整路径获取数据吗?这是针对joomla 2.5的,谢谢如果您要上传文件,您需要确保表单标签包含enctype属性,并将其设置为“多部分/表单数据” 乙二醇
另请参见:您是否尝试过,只需三行代码即可将附件支持集成到组件中
if (JLoader::import('components.com_dpattachments.libraries.dpattachments.core', JPATH_ADMINISTRATOR)) {
echo DPAttachmentsCore::render('com_demo.item', $object->id);
}
支持从剪贴板拖放和复制粘贴(无需将文件保存到硬盘)。也许你想试一试。如果没有,这里有一个指向Github repo的链接,说明如何实现上传功能:
[我是这个组件的作者]你能提供var\u dump($\u文件)吗?当我调用echo时,我得到了“array(0){}”,但我选择了file。我太笨了。我的视图中有标记enctype,但我正在将其添加到文件的输入中。现在,当我把它添加到表单标签中时,效果好多了,我得到了正确的结果。谢谢
<form action="" method="post" enctype="multipart/form-data">
if (JLoader::import('components.com_dpattachments.libraries.dpattachments.core', JPATH_ADMINISTRATOR)) {
echo DPAttachmentsCore::render('com_demo.item', $object->id);
}