小编Sev*_*lor的帖子

我一直得到这个mysql错误代码#1089

CREATE TABLE `movies`.`movie`
( `movie_id` INT(3) NULL AUTO_INCREMENT, `movie_name` VARCHAR(25) NULL,
  `movie_embedded_id` VARCHAR(50) NULL, `rating_no` INT(3) NULL,
  `movie_description` VARCHAR(50) NULL, PRIMARY KEY (`movie_id`(3))) ENGINE = InnoDB;
Run Code Online (Sandbox Code Playgroud)

我一直收到这个错误:

#1089 - 前缀键不正确; 使用的关键部分不是字符串,使用的长度比关键部分长,或者存储引擎不支持唯一的前缀键.

但我不知道这是什么意思,任何人都有线索?

mysql

28
推荐指数
3
解决办法
8万
查看次数

组合2个不同长度的阵列

我有两个不同的数组,我正在使用的例子是一个是132,另一个是136,

我需要array_combine()他们(使第一个成为关键,第二个成为价值).在我的例子中,我想保留132个键/值对,并删除没有相应匹配的额外4.

我目前有这个功能(我在php.net的文档中找到array_combine()),但它不起作用:

function array_combine2($arr1, $arr2) {
            $count1 = count($arr1);
            $count2 = count($arr2);
            $numofloops = $count2/$count1;

            $i = 0;
            while($i < $numofloops){
                $arr3 = array_slice($arr2, $count1*$i, $count1);
                $arr4[] = array_combine($arr1,$arr3);
                $i++;
            }

            return $arr4;
     }
Run Code Online (Sandbox Code Playgroud)

我一直回来

警告:array_combine()[function.array-combine]:两个参数在$ arr4 [] = ...开头的行上应该有相同数量的元素

任何建议都会有帮助,

谢谢!

php arrays

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

如何在cakephp 3.0中删除会话?

所有代码都在一个控制器中

我的代码是这样的.

    public function login()
    {
    $session = $this->request->session();
    $session_event_id = $session->read('Events.event_id');
    $session_division_id = $session->read('Events.division_id');

    if(!$session_event_id || !$session_division_id) {
        $event_table = TableRegistry::get('Events');
        $event = $event_table->find('all', ['fields' => ['id'], 'order' => 'id desc'])->first();
        $session->write('Events.event_id', $event->id);
        $session_event_id = $session->read('Events.event_id');

        $division_table = TableRegistry::get('Divisions');
        $division = $division_table->find('all',['fields' => ['id'], 'conditions' => ['event_id' => $event->id]])->first();
        $session->write('Events.division_id', $division->id);
        $session_division_id = $session->read('Events.division_id');
    }
    }
Run Code Online (Sandbox Code Playgroud)

通过上面的代码,我能够写入和读取会话值,但注销时我想删除那些会话数据

public function logout()
{    
    $session = $this->request->session();
    $this->$session->delete();
    return $this->redirect($this->Auth->logout());
}
Run Code Online (Sandbox Code Playgroud)

警告(4096):Cake\Network\Session类的对象无法转换为字符串[APP/Controller/UsersController.php,第56行]

注意(8):Cake\Network\Session类到String转换的对象[APP/Controller/UsersController.php,第56行]

错误:在非对象文件/var/www/html/MEX/src/Controller/UsersController.php上调用成员函数delete()

session cakephp cakephp-3.0

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

标签 统计

arrays ×1

cakephp ×1

cakephp-3.0 ×1

mysql ×1

php ×1

session ×1