我是php的新手,我在尝试将文件上传到phpMyAdmin时遇到错误:
Insert new record and upload photo
The upload destination folder does not appear to be writable.
Fatal error: Call to undefined function form_open_multipart() in /home/bg14nz/public_html/ci/application/views/vFormInsertPhoto.php on line 76
这是我的代码:
<h1>Insert new record and upload photo</h1>
<?php echo $error;?>
<?php echo form_open_multipart('site/doupload');?> (line 76)
Photo title:
<input type="text" name="PhotoTitle" value="" size="50" />
<br />
<input type="file" name="userfile" size="20" />
<br />
<input type="submit" value="upload" />
<br /><br />
<div><input type="submit" value="Submit" /></div>
</form>
非常感谢
注意:我正在使用Codeigniter
答案 0 :(得分:0)
这与PHP,Codeigniter或MySQL无关。您尝试写入的文件夹的基础权限不提供对正在运行的系统用户(假设基本LAMP堆栈)Apache的写访问权。
您需要更改文件夹的权限。如果您有ssh访问权限,可以通过命令行直接执行此操作(查找chmod和chown),如果您正在使用cPanel或其他类似的控制面板前端来管理带有filemanager Web应用程序的服务器,则可能是为您提供了一些改变权限的方法,或者如果您正在使用FTP程序(比如Filezilla),它可能会为您提供一些方法来更改文件夹的权限。您希望向所有人提供写入权限,或者将所有权更改为运行Apache的用户。
如果您在共享服务器上运行,请注意,执行上述任一操作可能会让您在服务器上向您的其他人员打开他们想要的任何内容。您不应该信任您在该文件夹中找到的任何内容,如果它可以通过网络访问,那么请定期查找上传的垃圾邮件或执行其他恶意行为的PHP文件。
答案 1 :(得分:0)
试试这个:
如果您使用的是.htaccess,请查看以下.htaccess代码
RewriteEngine on
Rewritebase /
RewriteCond $1 !^(index\.php|uploads|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]
&#34;上传&#34;是您上传文件等的文件夹。