vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   *Solved* Whats wrong with this code? (https://vborg.vbsupport.ru/showthread.php?t=214537)

Michael D Price 05-25-2009 08:50 PM

*Solved* Whats wrong with this code?
 
*This issue has been solved*

Ok, im trying to modify the newattachment.php to allow attaching local files without going through any uploading process.

With the code below, I keep getting the error
"Failed to write file. Check disc quotas and permissions for the path: /home/cashmone/vbuploads/1"

This is not a permission issue, as attaching via upload works ok.

Code:

if (!empty($vbulletin->GPC['attach']))
                {
                       
                        $vbulletin->input->clean_gpc('p', 'attachmentpath', TYPE_ARRAY_STR);
                        $attachdata =& datamanager_init('Attachment', $vbulletin, ERRTYPE_STANDARD);

                        if (!$foruminfo['allowposting'])
                        {
                                $error = $vbphrase['this_forum_is_not_accepting_new_attachments'];
                                $errors[] = array(
                                        'filename' => $attachment['name'],
                                        'error'    => $error
                                );
                        }
                        else if ($vbulletin->options['attachlimit'] AND $attachcount > $vbulletin->options['attachlimit'])
                        {
                                $error = construct_phrase($vbphrase['you_may_only_attach_x_files_per_post'], $vbulletin->options['attachlimit']);
                                $errors[] = array(
                                        'filename' => $attachment['name'],
                                        'error'    => $error
                                );
                        }
                        else
                        {
                        //die(print_r($vbulletin->GPC['attachmentpath']));
                        //echo filesize("/home/cashmone/vbuploads/".$vbulletin->GPC['attachmentpath'][0]);
                        //die();       
                $attachdata->set('dateline', TIMENOW);
                $attachdata->set('thumbnail_dateline', TIMENOW);
                if ($attachdata->fetch_field('visible') === null)
                {
                        if (isset($vbulletin->foruminfo['moderateattach']))
                        {
                                $visible = ((!$vbulletin->foruminfo['moderateattach'] OR can_moderate($vbulletin->foruminfo['forumid'], 'canmoderateattachments')) ? 1 : 0);
                        }
                        else
                        {
                                #default an attachment with no specified visibility to true
                                $visible = 1;
                        }
                        $attachdata->set('visible', $visible);
                }
                $attachdata->setr('userid', $vbulletin->userinfo['userid']);
                $attachdata->setr('filename', $vbulletin->GPC['attach']);
                $attachdata->setr('filesize', filesize("/home/cashmone/vbuploads/".$vbulletin->GPC['attachmentpath'][0]));
                $attachdata->setr('filehash', md5_file("/home/cashmone/vbuploads/".$vbulletin->GPC['attachmentpath'][0]));
                $attachdata->setr('posthash', $vbulletin->postinfo['posthash']);
                //$attachdata->setr_info('thumbnail', '');
                $attachdata->setr_info('postid', $vbulletin->postinfo['postid']);
                $attachdata->set_info('filedata_location', "/home/cashmone/vbuploads/".$vbulletin->GPC['attachmentpath']);


                // Update an existing attachment of the same name, rather than insert a new one or throw an "Attachment Already Exists" error
                // I don't think this is actually used so ignore it for now
                //$this->data->set_info('updateexisting', true);

                if (!($result = $attachdata->save()))
                {
                die('error');
                }

                //@unlink($this->upload['location']);
                //unset($this->upload);

                return $result;
       

                                if ($attachmentid = $upload->process_upload($attachment))
                                {
                                        if ($vbulletin->userinfo['userid'] != $postinfo['userid'] AND can_moderate($threadinfo['forumid'], 'caneditposts'))
                                        {
                                                $postinfo['attachmentid'] =& $attachmentid;
                                                $postinfo['forumid'] =& $foruminfo['forumid'];
                                                require_once(DIR . '/includes/functions_log_error.php');
                                                log_moderator_action($postinfo, 'attachment_uploaded');
                                        }
                                }
                                else
                                {
                                        $attachcount--;
                                }

                                if ($error = $upload->fetch_error())
                                {
                                        $errors[] = array(
                                                'filename' => is_array($attachment) ? $attachment['name'] : $attachment,
                                                'error'    => $error,
                                        );
                                }

                        }
                }



All times are GMT. The time now is 05:57 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01002 seconds
  • Memory Usage 1,735KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (1)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete