小编Eve*_*oob的帖子

PHP ereg与preg

我注意到在PHP正则表达式库中有ereg和preg之间的选择.有什么不同?是一个比另一个更快,如果是这样,为什么不慢的被弃用?

是否有任何情况下使用一个而不是另一个?

php regex pcre posix-ere

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

jQuery密码强度检查器

我是jQuery的新手,我写了一个简单的函数来检查每个按键的密码强度.

这个想法是每次用户输入一个角色时,评估内容以测试他们输入的密码的强度......我相信每个人之前都看过这些.

无论如何,我使用的逻辑是没有密码以值1开头.当使用小写字符时,分数增加到2.当使用数字时,分数再次增加1,对于大写时相同使用字符,密码长度为5个或更多字符时使用.

返回的是密码的强度,每次按下一个键时,从1到5的值.

所以,关于我的问题.我这样做的方式似乎并不像jQuery那样...几乎就像我可能刚刚完成了直接的javascript.我也想知道我的逻辑.我做过什么或忽略了什么吗?聪明人比我自己的任何建议?

任何建议或意见将不胜感激.

$(document).ready(function(){

        $("#pass_strength").keyup(function() {

            var strength = 1;

            /*length 5 characters or more*/
            if(this.value.length >= 5) {
                strength++;
            }

            /*contains lowercase characters*/
            if(this.value.match(/[a-z]+/)) {
                strength++;
            }

            /*contains digits*/
            if(this.value.match(/[0-9]+/)) {
                strength++;
            }

            /*contains uppercase characters*/
            if(this.value.match(/[A-Z]+/)) {
                strength++;
            }

            alert(strength);
        });
     });
Run Code Online (Sandbox Code Playgroud)

javascript passwords jquery logic

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

我的查询有多糟糕?

好的我需要根据一些用户输入构建一个查询来过滤结果.

查询基本上是这样的:

SELECT * FROM my_table ORDER BY ordering_fld;
Run Code Online (Sandbox Code Playgroud)

有四个文本框,用户可以选择过滤数据,这意味着我必须为所使用的第一个过滤器动态构建一个"WHERE"子句,然后为输入的每个后续过滤器创建"AND"子句.

因为我懒得这样做,所以我只是将每个过滤器都设置为"AND"子句,并在默认情况下在查询中放置一个"WHERE 1"子句.

所以现在我有:

SELECT * FROM my_table WHERE 1 {AND filters} ORDER BY ordering_fld;
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,我做过一些会对我的查询性能产生负面影响的事情,或者以任何我应该远程担心的方式错误地解决其他问题吗?

mysql sql optimization performance

27
推荐指数
3
解决办法
1109
查看次数

MySQL PHP不兼容

我在本地运行WAMP,但连接到远程MySQL数据库.PHP的本地版本是最新的5.3.0.

其中一个远程数据库,版本5.0.45工作正常.但是,我正在尝试连接的另一个远程数据库,即版本5.0.22在死亡之前抛出以下错误:

警告:mysql_connect()[function.mysql-connect]:OK数据包比预期的短6个字节.PID = 5880 in ...

警告:mysql_connect()[function.mysql-connect]:mysqlnd无法使用旧身份验证连接到MySQL 4.1+ ...

WTF?

更新:

恢复到PHP 5.2.*即低于5.3.0的任何内容都可以完全解决问题.只要我没有运行5.3.0,我就可以连接到两个数据库.我不确定这种奇怪的解释是什么.

php mysql

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

用于构建相当复杂的PHP Web服务的设计模式

我刚刚"完成"在PHP中编写一个相对复杂的Web服务.由于最后一刻的请求,更改,附件,通常情况下,代码库现在有点混乱.

我尝试尽可能轻松地编写代码并以最大化性能的方式编写代码.

因此,我没有使用像Zend这样的任何框架或任何像Doctrine这样的ORM.

我想知道是否存在任何框架或设计模式仅用于在PHP中构建API/Web服务?

我正在考虑一个重构器,我想确保现在我确切地知道我能够正确地构建这个东西.

php api frameworks design-patterns web-services

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

什么是使用git克隆/复制项目为新的最佳方法?

我想为一个新项目克隆一个现有的git repo.克隆后,代码应独立于原始开发.我也想在GITHUB上主持新项目.

我的工作流程:

  • git clone BASE_GITHUB_URL NEW_DIR
  • cd/NEW_DIR

但之后我的'克隆'与Github上的基础仓库连接.我想将更改推送到新的Github Repo instad

我新增了它的类似'fork',但它对我不起作用,就像Github上的用户一样.

git github

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

如何使用PHP和MySQL有效地对大型数据集进行分页?

正如你们中的一些人所知,在MySQL中使用LIMIT关键字并不妨碍它阅读前面的记录.

例如:

SELECT * FROM my_table LIMIT 10000, 20;
Run Code Online (Sandbox Code Playgroud)

意味着MySQL仍将读取前10,000条记录,并在生成我们追踪的20条记录之前抛弃它们.

因此,在对大型数据集进行分页时,高页码意味着加载时间过长.

有没有人知道任何现有的分页类/技术/方法可以以更有效的方式对大型数据集进行分页,即不依赖于LIMIT MySQL关键字?

在PHP中,如果可能的话,因为这是我公司的首选武器.

干杯.

php mysql logic pagination

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

gem在rails中安装mysql问题

我在rails应用程序中遇到错误.

捆绑的mysql.rb驱动程序已从Rails 2.2中删除.请安装mysql gem并再试一次:gem install mysql.

当我尝试做宝石安装mysql它仍然无法正常工作,我得到这个错误.

警告:安装到〜/ .gem,因为/Library/Ruby/Gems/1.8和/ usr/bin都不可写.警告:您的PATH中没有/Users/bartligthart/.gem/ruby/1.8/bin,不会运行gem可执行文件.

我也尝试了这个,但它没有用

sudo gem install mysql - --with-mysql-config≡/ usr/local/mysql/bin/mysql_config

我该怎么做才能安装mysql?

mysql ruby-on-rails

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

WebSocket 消息旁边的数字代码有何含义?

我刚刚完成了简单的聊天客户端 socket.io 教程,并且正在使用 Chrome WebSocket 检查器检查浏览器和 Node.js 服务器 Web 套接字之间的消息。消息前面有数字前缀,如下面的屏幕截图所示。

在此输入图像描述

正如你所看到的,有一些消息只有“2”和“3”,在我的发出旁边有 42 秒来回。他们的意思是什么?是否有我应该熟悉的主要消息类型列表,以便我可以了解如何调试 Web 套接字?

javascript sockets debugging websocket node.js

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

当我使用盐水CRYPT_MD5来加密我的密码时会加密什么?

在字符串上使用md5始终生成字母数字加密结果,即:无符号.

但是,当我使用php crypt()函数,特别是CRYPT_MD5(并且它已打开,我已检查过)时,它返回的假定md5哈希看起来不像md5哈希.

例如:

如果我md5字符串'密码',我得到:

$pass = md5('password');
echo $pass;
//5f4dcc3b5aa765d61d8327deb882cf99
Run Code Online (Sandbox Code Playgroud)

如果我使用CRYPT_MD5,它由'$ 1 $'前缀表示,'$'后缀表示盐为'salt':

$pass = crypt('password', '$1$salt$');
echo $pass;
//$1$salt$qJH7.N4xYta3aEG/dfqo/0
Run Code Online (Sandbox Code Playgroud)

现在,使用的算法和盐按预期显示,'$ 1 $'表示使用了CRYPT_MD5,盐在$符号之间显示为'盐'.

但是..在最后一个$符号之后的哈希密码看起来不像md5 ......它有斜线和全停.

为什么这样哈希呢?这不是真正的md5吗?

请问你是否需要我澄清这些.啊.

php security passwords hash

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