ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Ignore:
Timestamp:
Apr 13, 2008, 11:40:29 PM (15 years ago)
Author:
ebihara
Message:

#2182:メッセージにファイルをアップロードできるようにした

Location:
OpenPNE/trunk/webapp/modules/pc
Files:
2 added
8 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/trunk/webapp/modules/pc/do/f_message_send_insert_c_message.php

    r4933 r6536  
    2323        // ----------
    2424
     25        // 添付ファイル
     26        $fileupload_error = '';
     27        if (OPENPNE_USE_FILEUPLOAD) {
     28            $tmpfile_4 = $requests['tmpfile_4'];
     29            $tmpfile_4_original_filename = $requests['tmpfile_4_original_filename'];
     30           
     31            if ($tmpfile_4) {
     32                // 拡張子制限
     33                if (!util_check_file_extention($tmpfile_4_original_filename)) {
     34                    $fileupload_error = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
     35                }
     36            }
     37        }
     38
    2539        $msg1 = "";
    2640        $msg2 = "";
     
    3145        if (null == $body) {
    3246            $msg2 = "メッセージを入力してください";
     47        }
     48        if (!$msg1 && !$msg2 && $fileupload_error) {
     49            $msg1 = $fileupload_error;
    3350        }
    3451
     
    113130            do_common_send_message_mail_send_ktai($c_member_id_to, $u);
    114131        }
    115         //画像挿入
     132
     133        //画像・ファイル挿入
    116134        $sessid = session_id();
    117135        $filename_1 = image_insert_c_image4tmp("ms_{$c_message_id}_1", $tmpfile_1);
    118136        $filename_2 = image_insert_c_image4tmp("ms_{$c_message_id}_2", $tmpfile_2);
    119137        $filename_3 = image_insert_c_image4tmp("ms_{$c_message_id}_3", $tmpfile_3);
     138        $filename_4 = '';
     139        if (OPENPNE_USE_FILEUPLOAD) {
     140            if ($tmpfile_4) {
     141                $filename_4 = file_insert_c_file4tmp("ms_{$c_message_id}_4", $tmpfile_4, $tmpfile_4_original_filename);
     142            }
     143        }
    120144        t_image_clear_tmp($sessid);
    121         db_message_update_c_message($c_message_id, $subject, $body, $filename_1, $filename_2, $filename_3);
     145        t_file_clear_tmp($sessid);
     146        db_message_update_c_message($c_message_id, $subject, $body, $filename_1, $filename_2, $filename_3, $filename_4);
    122147
    123148        $p = array('msg' => 1);
  • OpenPNE/trunk/webapp/modules/pc/page/f_message_send.php

    r6527 r6536  
    8080        $this->set("box", $box);
    8181
    82         /////AA local var samples AA//////////////////////////
     82        // 許可されている拡張子のリスト
     83        $this->set('allowed_extensions', util_get_file_allowed_extensions('string'));
     84
    8385        return 'success';
    8486    }
  • OpenPNE/trunk/webapp/modules/pc/page/f_message_send_confirm.php

    r5234 r6536  
    4545        );
    4646
     47        //添付ファイル
     48        $upfile_4 = $_FILES['uploadfile'];
     49
    4750        $target_member = db_member_c_member4c_member_id($form_val['target_c_member_id']);
    4851        if (empty($target_member)) {
     
    6164            }
    6265        }
     66        if (OPENPNE_USE_FILEUPLOAD) {
     67            if (!empty($upfile_4) && $upfile_4['error'] !== UPLOAD_ERR_NO_FILE) {
     68                // ファイルサイズ制限
     69                if ($upfile_4['size'] === 0 || $upfile_4['size'] > FILE_MAX_FILESIZE * 1024) {
     70                    $err_msg[] = 'ファイルは' . FILE_MAX_FILESIZE . 'KB以内のファイルにしてください(ただし空のファイルはアップロードできません)';
     71                }
     72
     73                // 拡張子制限
     74                if (!util_check_file_extention($upfile_4['name'])) {
     75                    $err_msg[] = sprintf('アップロードできるファイルの種類は(%s)です', util_get_file_allowed_extensions('string'));
     76                }
     77            }
     78        }
    6379        $form_val['upfile_1'] = $_FILES['upfile_1'];
    6480        $form_val['upfile_2'] = $_FILES['upfile_2'];
     
    6783        $form_val['tmpfile_2'] = $tmpfiles[2];
    6884        $form_val['tmpfile_3'] = $tmpfiles[3];
    69 
     85        if (OPENPNE_USE_FILEUPLOAD) {
     86            $form_val['upfile_4'] = $upfile_4;
     87            $form_val['tmpfile_4'] = t_file_save2tmp($upfile_4, $sessid, "tc_4");
     88        }
    7089
    7190        $target_c_member_id = $form_val['target_c_member_id'];
  • OpenPNE/trunk/webapp/modules/pc/page/h_message.php

    r4933 r6536  
    3030        // メッセージデータ取得
    3131        $c_message = db_message_c_message4c_message_id2($target_c_message_id, $u);
     32        $c_message['original_filename'] = db_file_original_filename4filename($c_message['filename']);
    3233
    3334        if (!$form_val['subject'])
  • OpenPNE/trunk/webapp/modules/pc/templates/f_message_send.tpl

    r6014 r6536  
    5656</td>
    5757</tr>
     58({if $smarty.const.OPENPNE_USE_FILEUPLOAD})
     59<tr>
     60<th>ファイル</th>
     61<td>
     62<input type="file" class="input_file" name="uploadfile" size="40" />
     63<p class="caution">※ファイルサイズは({$smarty.const.FILE_MAX_FILESIZE})KB以内({if $allowed_extensions})、ファイルの種類は(({$allowed_extensions}))({/if})のファイルがアップロードできます。</p>
     64</td>
     65</tr>
     66({/if})
    5867</table>
    5968<div class="operation">
  • OpenPNE/trunk/webapp/modules/pc/templates/f_message_send_confirm.tpl

    r6014 r6536  
    4343</tr>
    4444({/if})
     45({if $smarty.const.OPENPNE_USE_FILEUPLOAD})
     46({if $form_val.upfile_4.name})
     47<tr><th>ファイル</th><td>({$form_val.upfile_4.name})</td></tr>
     48({/if})
     49({/if})
    4550</table>
    4651<div class="operation">
     
    5459<input type="hidden" name="tmpfile_2" value="({$form_val.tmpfile_2})" />
    5560<input type="hidden" name="tmpfile_3" value="({$form_val.tmpfile_3})" />
     61<input type="hidden" name="tmpfile_4" value="({$form_val.tmpfile_4})" />
     62<input type="hidden" name="tmpfile_4_original_filename" value="({$form_val.upfile_4.name})" />
    5663<input type="hidden" name="target_c_message_id" value="({$form_val.target_c_message_id})" />
    5764<input type="hidden" name="jyusin_c_message_id" value="({$form_val.jyusin_c_message_id})" />
  • OpenPNE/trunk/webapp/modules/pc/templates/h_message.tpl

    r6529 r6536  
    6464</div>
    6565
     66({if $c_message.filename && $smarty.const.OPENPNE_USE_FILEUPLOAD})
     67<div class="block attachFile"><ul>
     68<li><a href="({t_url m=pc a=do_h_message_file_download})&amp;target_c_message_id=({$c_message.c_message_id})&amp;sessid=({$PHPSESSID})">({$c_message.original_filename})</a></li>
     69</ul></div>
     70({/if})
     71
    6672<div class="operation">
    6773({t_form_block m=pc a=do_h_message_box_delete_message _attr='class="delete"'})
  • OpenPNE/trunk/webapp/modules/pc/validate/do/f_message_send_insert_c_message.ini

    r238 r6536  
    2121default = ""
    2222
     23[tmpfile_4]
     24type = "string"
     25default = ""
     26
     27[tmpfile_4_original_filename]
     28type = "string"
     29default = ""
     30
    2331[target_c_message_id]
    2432type = "int"
Note: See TracChangeset for help on using the changeset viewer.