小编Rob*_*itt的帖子

MySql JOINS的优点/缺点

当我从多个表中选择数据时,我曾经经常使用JOINS,最近我开始使用另一种方式,但从长远来看,我不确定其影响.

例子:

SELECT * FROM table_1 LEFT JOIN table_2 ON (table_1.column = table_2.column)
Run Code Online (Sandbox Code Playgroud)

所以这是跨表的基本LEFT JOIN,但请看下面的查询.

SELECT * FROM table_1,table_2 WHERE table_1.column = table_2.column
Run Code Online (Sandbox Code Playgroud)

就个人而言,如果我加入,请说7个数据表,我宁愿在JOINS上这样做.

但是这两种方法有什么优缺点吗?

mysql select join

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

PHP的国际化

我目前正在研究i18n融入项目的最佳方法.

我想到了几种方法,首先是存储字符串和相关语言环境的数据库方案,但问题是选择字符串并不容易,因为我不想像所以:

SELECT text FROM locales WHERE locale = 'en_GB' AND text_id = 245543
Run Code Online (Sandbox Code Playgroud)

要么

SELECT text FROM locales WHERE locale = 'en_GB' AND text_primary = 'hello'
Run Code Online (Sandbox Code Playgroud)

下一个方法是将它们存储在文件中locales/en_gb/login/strings.php,然后尝试通过专门开发的类来访问它们:

$Language = Registry::Construct('Language',array('en_GB'));
echo $Language->login->strings->hello;
Run Code Online (Sandbox Code Playgroud)

这个问题是我必须构建一个系统,通过管理面板更新这些文件非常耗时,不仅仅是构建系统来管理字符串,而是在网站增长时实际管理字符串

  • 还有哪些方法对大型系统有益
  • 是否有任何自动化的方式来进行"翻译"
  • 我应该坚持使用数据库方法并构建一个系统供用户翻译带有评级/建议更好版本的字符串吗?
  • 您过去尝试过哪些系统,我应该调查它们还是完全避免它们.

php internationalization

11
推荐指数
3
解决办法
7116
查看次数

C#应用程序中的本地化

我正在创建一个基于WinForms/KryptonForms的C#应用​​程序,并且由于应用程序处于开发的一半,我认为我最好将本地化排序.

作为一个天生的和繁殖的PHP程序员(我知道C#是一个全新的水平),我会创建一个类来检测语言并自动将语言包分配给应用程序.然后使用语言对象来访问值.

我想知道我是否可以在最简单/最好的方法上得到一些例子.

我个人想要一些与应用程序设置相关的内容

通常在哪里,我会做MyApplication.Properties.Settings.Default.SomeKey我希望的MyApplication.Languages.Current.ApplicationTitle,并MyApplication.Languages.en.ApplicationTitle为例子.

此外,通过仅为每个语言文件加载单个资源来提高速度也是有益的.

因此,语言加载英语,西班牙语用户被提升为该应用程序是英语,他想将其更改为西班牙语,他点击是,设置得到更新,应用程序重新启动并加载单个西班牙语语言包.

你对此有何看法?


编辑:

该应用程序基于XMPP协议并使用agsXMPP库.根据我的理解,每个向我发送他们在场的用户也应该发送他们的系统所使用的语言.

所以基本上如果有任何方法可以"掌握"存储单个单词的事实并且__("some string")在我的应用程序中使用它是可能的,但同时我只是在看GUI文本.

c# localization internationalization

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

javascript函数是对象吗?

我现在正在努力解决一个Javascript问题,我无法在网上找到解释.我想这是因为我没有输入正确的关键字,这也可能与我为什么要挣扎这个问题有关.

我的基本假设是可以改变对象:

> var x = {'n': 2};
> x['n']
2
> x['n'] = 3;
3
Run Code Online (Sandbox Code Playgroud)

pheww工作.但仍然(函数也是对象):

> var addn = function(a) {
    var n = 2;
    return n + a;
}

> addn(3);
5
> addn['n'] = 3;
3
> addn(3);
5
Run Code Online (Sandbox Code Playgroud)

这次我无法改变'n'.有没有办法解决这个问题,同时保持功能的味道?而不是完全OO.我有一个相关的问题是如何维护函数的依赖性以便进行测试 - 再次没有OO?因为我正在寻找解决方案,但如果可能的话,我也想了解Javascript中的哪种机制让我苦苦挣扎.

干杯,

标记

免责声明:通过提及OO我不打算对OO说任何话.而且我也不打算对VI或Emacs说任何话.如果我以某种方式伤害了你的感情,请跳过这个.

javascript scope function object

10
推荐指数
2
解决办法
9589
查看次数

在PHP中安全地保存会话数据

我试图了解会话如何在PHP中工作,并发现会话数据默认存储在文件系统中.在共享托管环境中,会话数据可以由任何用户编写的PHP脚本读取.如何防止这种情况?

php security session tmp

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

使用Node.JS

昨晚我转储Windows 7并将我的硬盘驱动器格式化为基于Linux的操作系统,纯粹是因为我想开始使用Node.JS

所以我已经安装了Node.JS并做了一些测试工作,http服务器和套接字等.

我想要做的是构建一个与MVC框架紧密集成的HTTP服务器,但在开始之前我需要学习如何在Node中高效构建.

例如在PHP中作为我的框架,我将创建一个引导加载系统来加载所有基类等,然后我会激活我的事件系统准备开始附加回调.

我将继续处理请求等,直到生成输出,然后将其发送到将处理标头等的输出处理程序

但Node是一个全新的环境,我想知道在Node中构建系统的最佳实践.

我正在寻找的信息更多的是与设计结构有关,而不是应用程序的实际编码,如何加载lib加载库的位置等等

任何帮助表示赞赏.


到目前为止,我的WebApplication很顺利,我已经构建了我的应用程序非常传统和一点程序.

我开始的是创建一个像这样的目录结构:

<root>
    startup.js
    /public/
        favicon.ico
        /images/
        /stylesheets/
        /javascripts/
    /system/
        init.js
        config.js
        /libs/
            /exceptions/
                http.js
                server.js
    /application/
        /views/
            /_override/
                /errors/
                    generic.view
            /partials/
                sidebar.voew
            index.view
        /controllers/
             index.js
        /models/
            users.js
Run Code Online (Sandbox Code Playgroud)

这个目录结构就像大多数基于MVC的Web应用程序一样,所以使用这种方法我觉得很舒服.

启动文件是由节点作为入口点执行的,node startup &看起来像这样:

/*
    * Header of t he file, Copyright etc
*/

var _Intitialize = require("./system/init.js");

//Displays the command line header, title, copyright etc
_Intitialize.DisplayCommandLineHeader();

//Check the enviroment, Permissions, Ports etc
_Intitialize.CheckEnviroment();

//Start the server and …
Run Code Online (Sandbox Code Playgroud)

structure application-design node.js

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

IIS或Apache上的PHP(优缺点)

在IIS上运行php有什么优缺点?

要么

在Apache上运行php的优点和缺点是什么?

php apache iis comparison

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

使用jquery加密用户密码并使用C#解密

  • 我不想使用SSL来加密我正在构建的网站的注册和登录表单.
    • 我没有钱支付证书.
    • 我需要在我的asp.net网站上使用带有Jquery的enryption和C#解密.

有人有一个例子,采用这种方法有什么安全吗?

c# asp.net jquery

7
推荐指数
2
解决办法
4318
查看次数

方法链的影响

我知道在PHP中链接的好处,但我们可以说有以下情况

$Mail = new MailClass("mail")
        ->SetFrom("X")
        ->SetTo("X")
        ->SetSubject("X")
        ->AddRecipient("X")
        ->AddRecipient("X")
        ->AddRecipient("X")
        ->AddRecipient("X")
        ->AddRecipient("X")
        ->AddRecipient("X")
        ->Send();
Run Code Online (Sandbox Code Playgroud)

返回和重复使用对象是否存在任何问题,如速度或未遵循最佳实践等问题

如果您是Fluent-Interface的新手:Fluent-Interfaces上的Martin Fowler,也可以很好地阅读此内容

我完全理解,它不具备进行编程这种方式,能够像这样被处理:

$Mail = new MailClass("mail");
$Mail->AddRecipien(
    array(/*.....*/)
);
$Mail->SetFrom("X");
$Mail->SetTo("X");
$Mail->SetSubject("X");
$Mail->Send();
Run Code Online (Sandbox Code Playgroud)

但是让我说我​​有一个像这样的对象:

$Order = new Order()
         ->With(22,'TAL')
         ->With(38,'HPK')->Skippable()
         ->With(2,'LGV')
         ->Priority();
Run Code Online (Sandbox Code Playgroud)

请注意->With(38,'HPK')->Skippable(),这是此类编程的Pro的完美示例

php fluent-interface object chaining

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

使用C#从Active Directory获取组

我在通过Active Directory获取组时遇到问题 System.DirectoryServices

最初我在一个在域上注册的计算机上启动了我的应用程序,但由于它是一个活动域,我不想对AD做任何写入,所以我设置了一台Windows XP作为主机操作系统的机器,并在VM上安装了Windows Server 2003.

我在机器中添加了另一个以太网端口并设置了一个交换机,1个以太网端口专用于VM,另一个端口用于主机.

在配置IP地址以使它们通信之后,我将我的应用程序转移到主机上并将其启动,但我得到了一个DirectoryServicesCOMException.

随着用户名和密码无效的消息:(只是为了检查它是不是活动目录我创建了第三个虚拟机并安装了Windows XP,我添加到域中,并在APP中测试了凭据,这是一种享受.

所以我认为一定是因为运行应用程序的机器不是域的一部分.

下面是造成问题的代码块:

public CredentialValidation(String Domain, String Username, String Password, Boolean Secure)
{
     //Validate the Domain!
     try
     {
         PrincipalContext Context = new PrincipalContext(ContextType.Domain, Domain); //Throws Exception
         _IsValidDomain = true;

         //Test the user login
         _IsValidLogin = Context.ValidateCredentials(Username, Password);

         //Check the Group Admin is within this user
         //******HERE
         var Results = UserPrincipal.FindByIdentity(Context, Username).GetGroups(Context);

         foreach(Principal Result in Results)
         {
             if (Result.SamAccountName == "Domain Admins")
             {
                 _IsAdminGroup = true;
                 break;
             }
         } …
Run Code Online (Sandbox Code Playgroud)

c# active-directory active-directory-group

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