小编Cod*_*oso的帖子

#1071 - 指定密钥太长; 最大密钥长度为1000字节

我知道这个标题的问题之前已经得到了解答,但请继续阅读.在发布之前,我已经仔细阅读了有关此错误的所有其他问题/答案.

我收到以下查询的上述错误:

CREATE TABLE IF NOT EXISTS `pds_core_menu_items` (
  `menu_id` varchar(32) NOT NULL,
  `parent_menu_id` int(32) unsigned DEFAULT NULL,
  `menu_name` varchar(255) DEFAULT NULL,
  `menu_link` varchar(255) DEFAULT NULL,
  `plugin` varchar(255) DEFAULT NULL,
  `menu_type` int(1) DEFAULT NULL,
  `extend` varchar(255) DEFAULT NULL,
  `new_window` int(1) DEFAULT NULL,
  `rank` int(100) DEFAULT NULL,
  `hide` int(1) DEFAULT NULL,
  `template_id` int(32) unsigned DEFAULT NULL,
  `alias` varchar(255) DEFAULT NULL,
  `layout` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`menu_id`),
  KEY `index` (`parent_menu_id`,`menu_link`,`plugin`,`alias`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么以及如何解决它?问题是 - 这个查询在我的本地计算机上完美运行,并且在我以前的主机上运行良好.Btw.it来自一个成熟的项目 - phpdevshell - 所以我猜这些家伙知道他们在做什么,虽然你从来不知道. …

mysql mysqldump phpmyadmin

85
推荐指数
6
解决办法
12万
查看次数

AngularJS指令元素方法绑定 - TypeError:不能使用'in'运算符来搜索1中的'functionName'

这是主模板的控制器:

app.controller('OverviewCtrl', ['$scope', '$location', '$routeParams', 'websiteService', 'helperService', function($scope, $location, $routeParams, websiteService, helperService) {
    ...     
    $scope.editWebsite = function(id) {
        $location.path('/websites/edit/' + id);
    };
}]);
Run Code Online (Sandbox Code Playgroud)

这是指令:

app.directive('wdaWebsitesOverview', function() {
    return {
        restrict: 'E',
        scope: {
            heading: '=',
            websites: '=',
            editWebsite: '&'
        },
        templateUrl: 'views/websites-overview.html'
    }
});
Run Code Online (Sandbox Code Playgroud)

这是指令在主模板中的应用方式:

<wda-websites-overview heading="'All websites'" websites="websites" edit-website="editWebsite(id)"></wda-websites-overview>
Run Code Online (Sandbox Code Playgroud)

这是从指令模板(website-overview.html)调用的方法:

<td data-ng-click="editWebsite(website.id)">EDIT</td>
Run Code Online (Sandbox Code Playgroud)

问题:单击EDIT时,控制台中会出现此错误:

TypeError:无法使用"in"运算符在1中搜索"editWebsite"

有谁知道这里发生了什么?

javascript angularjs angularjs-directive angularjs-scope

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

Linux上的最大文件/文件夹数量?

我正在开发一个LAMP在线商店,它将允许管理员为每个项目上传多个图像.

我担心的是 - 马上就会有20000个项目,意味着大约60000张图像.

问题:

  1. Linux上的文件和/或文件夹的最大数量是多少?

  2. 处理这种情况的常用方法是什么(最佳实践)?

我的想法是根据每个项目的唯一ID为每个项目创建一个文件夹,但是在主上传文件夹中我仍然有20000个文件夹,并且它将无限增长,因为旧项目不会被删除.

谢谢你的帮助.

linux directory directory-structure

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

检查数字是否为小数

我需要检查PHP是否用户输入了十进制数字(美国方式,带小数点:X.XXX)

有任何可靠的方法吗?

php function decimal

38
推荐指数
6
解决办法
9万
查看次数

MySQL - 也使用外键作为主键

我有一个带有主键的表1 user_iduser_id带有外键的表2 .

user_id表2中每个只能存在1条记录,没有它就不能存在记录.

问题:user_id表2中可以同时包含外键和主键,如果是,那么它是一个好主意,有什么利弊?

mysql foreign-keys primary-key foreign-key-relationship primary-key-design

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

jQuery无法使用.on()将事件绑定到AJAX加载的元素

使用.load,我将以下内容加载到#step_2 div中:

<div id="step_2">
    Select a subcategory:
    <select id="subcategory_id" name="subcategory_id">
        <option value="0">All subcategories</option>
        <option value="68">Cool</option>
        <option value="15">Cooler</option>
        <option value="74">Excellent</option>
    </select>
</div>
Run Code Online (Sandbox Code Playgroud)

然后我试图检测用户选择的东西:

$("#subcategory_id").on("change", function(){
    alert( 'Success!' );
});
Run Code Online (Sandbox Code Playgroud)

但没有成功.有谁看到我做错了什么?非常感谢.

笔记:

这是FireBug看到的完整CSS路径:

html.js body div#container div#main form div#step_2 select#subcategory_id
Run Code Online (Sandbox Code Playgroud)

这是完整的javascript文件,如果上下文很重要:

$(document).ready(function() {

    $("#category_id").change(function() {
        $("#spinner").show();
        $("#step_2").load("process.php?selected=category", { value: $(this).val() }, function() {
            // Do something to say the data has loaded sucessfully
            $("#spinner").hide();
        });
    });

    $("#subcategory_id").on("change", function(){
        alert( 'Success!' );
    });

});
Run Code Online (Sandbox Code Playgroud)

jquery events binding javascript-events

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

高流量网站的推荐结构

我正在重写一个大网站,需要非常扎实的架构,这里是我的几个问题,请原谅我混合苹果和橙子,也许还有奇异果:)我做了很多研究,最后完全糊涂了.

主要问题:您将采用哪种方法来构建一个预计会以各种方式增长的大型网站?

  1. 单个入口点,数据库中的页面数据,通过将GET变量与数据库条目相关联来拉出(?pageid = whatever)

  2. 单个入口点,页面数据在单独的文件中,包含基于GET变量(?pageid =包含whatever.php的任何内容)

  3. MVC(好吧,伙计们,我都是为了这个,但是除了检查所有的教程和框架之外无法掌握这个概念,他们是否将"视图"存储在数据库中?从示例中可以看出,如果你有1000页相同的话它们可以由1个模型塑造,但我仍然需要1000个"视图"文件?)

  4. PAC - 这对我来说听起来更合乎逻辑,但没有找到太多资源 - 如果这是一个好方法,你能推荐任何书籍或链接吗?

  5. DAL/DAO/DDD - 在发布问题之前,我通过努力阅读堆栈溢出来了解这些术语.不确定它是否属于此列表

  6. 坐下来创建我自己的架构(如果没有人在这里启发我可能会这样做:)

  7. 没有提到的东西......

谢谢.

php model-view-controller dao data-access-layer pac

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

有没有办法强制移动设备上的水平/横向布局?

我正在构建一个网站的移动版本,在这种特定情况下,它在水平布局中看起来很完美.有没有办法强制这种布局无论用户设置是什么?

一些普遍的方式的答案是值得赞赏的,但如果你知道如何在任何特定的平台(iPhone,Android ..)上实现这一点,那么也许我们可以收集一套体面的规则来瞄准大多数移动用户.

iphone mobile mobile-website

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

如何获取wordpress根URL(每页上的ABSPATH更改)

我安装了wordpress:

http://example.com/wordpress/

在主页上时,ABSPATH常量输出完全相同,但当您导航到其他页面时,例如:

http://example.com/wordpress/contact

ABSPATH也转向:

http://example.com/wordpress/contact

问题是,无论在哪个页面上我如何获得实际的根(以粗体标记) - 没有硬编码?

我对ABSPATH改变值的原因有点困惑,一旦定义了常量不是常量吗?

谢谢!

php wordpress

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

如何按属性过滤为空数组?

我有这个ng-repeat

<tr ng-repeat="website in websites">
    <td>{{website.url}}</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

数组中的每个website对象websites如下所示:

{
  url: "example.com",
  groups: []
}
Run Code Online (Sandbox Code Playgroud)

问题:如何将滤镜应用于上面的循环,以便它只显示groups属性为空数组的元素?

我试过的事情:

data-ng-repeat="website in websites | filter: {groups: []}"
data-ng-repeat="website in websites | filter: !groups.length"
data-ng-repeat="website in websites | filter: groups.length === 0"
Run Code Online (Sandbox Code Playgroud)

(在控制台中没有错误但过滤掉所有内容)

data-ng-repeat="website in websites | filter: {groups: ''}"
Run Code Online (Sandbox Code Playgroud)

(与我想要的相反,只显示groups不是空数组的项目)

data-ng-repeat="website in websites | filter: {groups: null}"
Run Code Online (Sandbox Code Playgroud)

(如果不使用[]我使用null来表示没有值,这可行,但它看起来很麻烦......因为我需要经常注意groups属性变空,并手动将其设置为null)

angularjs angularjs-ng-repeat

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