小编Sub*_*axe的帖子

使用acos,aros和aros_acos的CakePHP自定义ACL授权扩展名api_的Acl表

我正在使用CakePHP开发一个restful API,我正在尝试实现一个自定义授权,授权用户使用ACL,代码看起来像

<?php
App::uses('BaseAuthorize', 'Controller/Component/Auth');

class ApiAuthorize extends BaseAuthorize {
     public function authorize($user, CakeRequest $request) { 
                $allowed = false;
        $Acl = $this->_Collection->load('Acl'); 
        list($plugin, $userModel) = pluginSplit($this->settings['userModel']);
        $action = $this->action($request); 

        $cacheName = 'permissions_' . strval($user['id']); 
        if (($permissions = Cache::read($cacheName, 'permissions')) === false) {
            $permissions = array(); 
            Cache::write($cacheName, $permissions, 'permissions');
        }
        if (!isset($permissions[$action])) {
            $User = ClassRegistry::init($this->settings['userModel']);
            $User->id = $user['id'];
            $allowed = $Acl->check($User, $action); 
            $permissions[$action] = $allowed;
            Cache::write($cacheName, $permissions, 'permissions');
            $hit = false;
        } else {
            $allowed = $permissions[$action];
            $hit = true; …
Run Code Online (Sandbox Code Playgroud)

php api acl cakephp croogo

5
推荐指数
1
解决办法
1373
查看次数

使用php str_getcsv函数将csv文件数据转换为数组

我有使用fputcsv创建的字符串

Date,Name,Hours 2013-01-02,"Test User",7:59 2013-01-03,"Test User",7:53 2013-01-04,"Test User",8:12 2013-01-07,"Test User",7:56 2013-01-08,"Test User",8:25 2013-01-09,"Test User",7:56 2013-01-10,"Test User",8:10 2013-01-11,"Test User",7:53 2013-01-14,"Test User",7:54 2013-01-15,"Test User",0:34 2013-04-01,"Test User",5:51 2013-04-02,"Test User",8:50 2013-04-03,"Test User",7:25 2013-04-04,"Test User",8:3 2013-04-05,"Test User","10:42:52[Not punch out]" ,Total,103:1
Run Code Online (Sandbox Code Playgroud)

当正确的标题(标题('Content-type:application/csv');标题('Content-Disposition:attachment; filename ="'.$ filename.'"');)被设置时,它会给出正确的csv文件.

使用php str_getcsv将csv文件数据转换为数组

但是我想再次将这个字符串转换为数组格式,所以我尝试将上面的字符串传递给str_getcsv但是得到像这样的数组

Array
(
    [0] => Date
    [1] => Name
    [2] => Hours
2013-01-02
    [3] => "Allen Herrera"
    [4] => 7:59
2013-01-03
    [5] => "Allen Herrera"
    [6] => 7:53
2013-01-04
    [7] => "Allen Herrera"
    [8] => 8:12
2013-01-07 …
Run Code Online (Sandbox Code Playgroud)

php arrays loops fgetcsv fputcsv

4
推荐指数
1
解决办法
1万
查看次数

邮件作为垃圾邮件发送 - phpmailer,如何避免

我知道,在第一眼看,许多用户将此问题标记为重复,但在阅读了10多个问题之后,我没有得到任何满意的答案,几乎所有问题都有答案,例如"你可以做的事情不多.","我不确定","没有确定的射击技巧"等等,这就是我写这个问题的原因,我认为这是非常普遍的问题,而且每个php开发人员都至少面对它一次,确实足够的语言:),现在我的问题是......

我正在开发一个项目管理应用程序,并且在创建任何任务时使用phpmailer发送邮件,或者任何有关任何错误邮件的评论被发送给相关用户,实际上不是在动作发生后立即发送邮件我创建了"通知"表我实际保存所有邮件数据和cron脚本,然后发送所有邮件,这是我的cron脚本的一部分.

$query = "select * from notifications where  1 ";
    $projects = $obj_basic->get_query_data($query);  

    if(!empty($projects))
    {
        foreach($projects as $data)
        {       
            $message = html_entity_decode($data['content'], ENT_QUOTES);            
            list($ton, $email) =  get_name_email($data['to']);      

            if(!empty($email))
            {
                $query = "select send_notification from users where email='$email' AND send_notification !='1' ";
                $users = $obj_basic->get_query_data($query);
                if(!empty($users))
                {
                    $deleteQuery = "delete from notifications where id ='".$data['id']."'";
                    $obj_basic->run_query($deleteQuery, 'DELETE');
                    continue;
                }

                $comment_id = $data['reference_id'];
                $attribute = $data['attribute'];
                $mail = new PHPMailer();
                list($fromName, $fromEmail) =  get_name_email($data['from']);       
                if(!empty($comment_id) && $attribute == 'comment')
                {
                    $fromEmail …
Run Code Online (Sandbox Code Playgroud)

php spam-prevention spam phpmailer

3
推荐指数
1
解决办法
2万
查看次数

在jquery延迟对象之间发送数据

我试图抓住jquery中的延迟对象,但仍然遇到麻烦.基本上我有一系列我想要运行的函数,其中函数1的结果决定了第二个函数中的逻辑.

我不确定我是否必须在某处调用管道方法或者只是使用then(),但无论如何我都会失败.如果你看第一个函数,有一个名为data的对象,我想传递给第二个.

 function run() {
    var data1 = {};
    var data2 = {};

    var body = $('body');

    $.when(first()).then(second()).done(constructData);

    function first() {
        var d = new $.Deferred();



        var data = {} //arbitrary data set that i want to send to second

        data.message = 'first message';
        data.id = 1234;

        body.append('First done');

        //return data object? add it to the resolve method?
       d.resolve();
    }

    function second(data) { //how do I get this data object?

        var d = new $.Deferred();


        body.append('Data from first:');

         body.append('Second done'); …
Run Code Online (Sandbox Code Playgroud)

javascript jquery deferred jquery-deferred

2
推荐指数
1
解决办法
5778
查看次数

如何取消多维数组中的最后一项?

我有一个像下面的数组

Array
(
    [0] => Array
        (
            [0] => Date
            [1] => Name
            [2] => Hours
        )
    [1] => Array
        (
            [0] => 2013-01-02
            [1] => Test User
            [2] => 7:59
        )
    [2] => Array
        (
            [0] => 2013-01-03
            [1] => Test User
            [2] => 7:53
        )
    [3] => Array
        (
            [0] => 2013-01-04
            [1] => Test User
            [2] => 8:12
        )
    .
    .
    .
    .
    [16] => Array
    (
        [0] => 
        [1] => Total
        [2] => 103:1
    )
    [17] …
Run Code Online (Sandbox Code Playgroud)

php multidimensional-array unset

2
推荐指数
1
解决办法
4053
查看次数

#1503 - UNIQUE INDEX必须包含表格分区功能中的所有列

我试图在我的数据库表的MySQL数据库表模式上添加分区为

CREATE TABLE IF NOT EXISTS `users` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `user_group_id` tinyint(3) unsigned NOT NULL DEFAULT '2',
  `username` varchar(50) NOT NULL,
  `email` varchar(80) NOT NULL,
  `password` varchar(50) NOT NULL,
  `first_name` varchar(25) DEFAULT NULL,
  `last_name` varchar(25) DEFAULT NULL,
  `gender` enum('m','f','u') NOT NULL DEFAULT 'u' COMMENT 'm=>Male, f=>Female, u=>Unspecified',
  `profile_image` varchar(255) DEFAULT NULL,
  `reset_key` varchar(50) DEFAULT NULL,
  `block` enum('y','n') NOT NULL DEFAULT 'n' COMMENT 'y=>blocked, n=>notblocked',
  `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `modified` timestamp NULL DEFAULT CURRENT_TIMESTAMP, …
Run Code Online (Sandbox Code Playgroud)

mysql sql partitioning

1
推荐指数
1
解决办法
8718
查看次数

Cakephp html链接图像+文本,不使用css

如何使用cakephp Html helper创建具有文本和图像的html链接,如下所示

<a href="#">
    <img src="images/icons/web-app/48/add-user.png" width="48" height="48"> Add User
</a>
Run Code Online (Sandbox Code Playgroud)

我希望得到最终结果

在此输入图像描述

我知道我可以用css做到这一点,但我只是想知道如何使用cakephp

cakephp

0
推荐指数
1
解决办法
7930
查看次数

如何为ckeditor中的所有元素设置编写器规则

我怎么能为所有元素设置这个全局:

    CKEDITOR.on('instanceReady', function(ev){
        var el = [ "p", "div", "table", "tbody", "tr", "td", "h1", "h2", "h3", "h4", "h5", "h6", "ul", "center" ];
        el.forEach(function(v) {
            ev.editor.dataProcessor.writer.setRules(v,
                {
                    indent: false,
                    breakBeforeOpen: true,
                    breakAfterOpen: false,
                    breakBeforeClose: false,
                    breakAfterClose: false
                }
            );
        });
    });
Run Code Online (Sandbox Code Playgroud)

把它作为一系列元素很无聊吗?有谁知道如何解决这个问题?

ckeditor

0
推荐指数
1
解决办法
512
查看次数