小编Tre*_*non的帖子

可以使用PHP和jQuery表单创建和验证库吗?

原始问题

是否有一个经过良好测试,最好是成熟的库,用于在PHP中创建表单,包括客户端(这是jQuery的用户所在)和服务器端验证?

理想情况下,表单可以从PHP类生成,也可以用纯HTML编写,并解析ala Agavi.然后,库将自动创建正确的jQuery钩子,以便可以运行包含的jQuery客户端验证.

我经常做的工作之一就是对旧的联系表格进行一些修改,我想将这项工作标准化,以便每次都可以使用相同的最佳实践代码.考虑到这一点,PHP类生成的HTML应该足够好,以便可以在需要的地方添加额外的CSS挂钩等.

任何建议都感激不尽.


更新

我一直在梳理和审查我发现的选项以及其他人在下面提出的建议,目前我会按照以下顺序对项目进行排序,以便从我对所有这些项目进行的少量测试和研究中获得质量.

  1. ValidForm Builder
  2. jFormer
  3. HTML_QuickForm2(如果你可以让客户端验证工作,那么这应该比jFormer跳得更高!)
  4. PHP的形式建设者级
  5. 使用Symfony!(用于表单呈现和验证的整个MVC框架是过度的)

我仍然不相信任何诚实的选择,我不知道为什么开始这些项目的人不会从一些坚实且经过良好测试的组件开始.例如,我会想到以下组合:

为您提供良好的稳定基础,并在经过测试的组件上生成一个漂亮的库.

此外,如果您对解析HTML而不是从PHP类生成HTML的库感兴趣,我找到了一个名为Minacl的项目.就像我在原始问题中提到的Agavi选项一样.

php forms validation jquery

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

SQL是否有任何已发布的编码风格指南?

通常我会得到非常复杂的SQL语句,我想知道是否有样式指南可以指示一种常见的方式来解决查询的各个方面.

我正在寻找符合Python的PEP8Zend Frameworks指南的描述,而不是逐个代码.

我的大部分查询都是为MySQL编写的.

所以你知道一个通​​用的风格指南吗?也许你自己写过一本.请分享您的指南.

mysql sql coding-style

25
推荐指数
3
解决办法
8917
查看次数

优点和缺点:Jetbrains IntelliJ/Sublime Text

我正在寻找支持PHP/JAVA/CSS/HTML/JAVASCRIPT以及其他语言的IDE.

Jetbrains IntelliJSublime Text似乎都是不错的选择.

但是,由于两者都需要支付继续使用,我想知道这两个IDE的优点和缺点是什么,以便更好地了解哪个适合我.我想,不必学习如何使用它们.

谢谢.

javascript php java ide

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

使用Git进行PHP部署.如何让它更加自动化?

我负责启动网络项目,目前从客户签到最终发布需要一段时间.它位于我可以访问root的服务器上,但是它运行Plesk以便老板可以设置VirtualHosts,这意味着它上面运行着许多站点.

每个项目都有自己的git存储库,所以目前我有以下设置.

在我的临时服务器上有一个repo的克隆,我有两个裸存储库.一个在锻造(由Indefero提供动力),另一个在实时服务器上.

项目的每个版本都标有今天的日期,例如.git tag -a deployed-2011-04-20.

所以在登台服务器上我执行类似的东西git push --tags live master,它针对的是真实服务器上的裸仓库.

然后在实时服务器上通过SSH执行一个简短的bash脚本,该脚本基本上将存储库从实时裸仓库克隆到Apache将提供的文件夹.

因此,如果这一切都有意义,您是否能够推荐一个工具或任何东西,以使我的生活更容易遵循工作流程或可以适应?

它看起来像这样:

Forge (authoritative source)
  ^
  |
  v
Staging/development server
  |
  v
Live server bare repo
  |
  v
Releases folder (symlinked to htdocs)
Run Code Online (Sandbox Code Playgroud)

php git deployment

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

在MySQL中转义关键字时,我是否应该使用反引号?

是否应将MySQL中的所有表名都包含在反引号(`)中以防止与保留关键字冲突?我问的原因是因为它们的使用使得SQL不那么便携,因为并非所有数据库都允许反引号.

那么避免包含关键字的表名和列名是更好的行动方案吗?如果是这样,可以采取哪些措施来降低MySQL在下一个版本中添加可能与您的架构冲突的新关键字的风险.

有关于此的最佳做法吗?

mysql sql

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

MySQL查找所有带有全文索引列的表

我需要对MySQL5服务器上所有数据库中的所有表进行修复,因为我已经更新了MySQL全文搜索停用词文件.

我可以运行查询或命令来执行此操作吗?

mysql mysql5

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

如何计算MySQL中几个月的两个日期之间的差异

我在MySQL表中有两列:

  • DateOfService(datetime)
  • 出生日期(日期)

我想运行一个MySQL查询,它将在几个月内提供这两个字段之间的日期差异.

我如何在MySQL选择查询中执行此操作?

谢谢.

mysql date

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

在文档管理应用程序中检查文档重复项和类似文档

更新:我现在为ssdeep C API 编写了一个名为php_ssdeep的PHP扩展,以便在本机中简化PHP中的模糊散列和散列比较.可以在我的博客上找到更多信息.我希望这对人们有所帮助.

我参与在Linux上编写一个PHP自定义文档管理应用程序,它将存储各种文件格式(可能是1000个文件),我们需要能够检查文本文档是否已经上传,以防止数据库中的重复.

基本上,当用户上传新文件时,我们希望能够向他们提供重复或包含类似内容的文件列表.然后,这将允许他们选择一个预先存在的文档或继续上传他们自己的文档.

类似的文件将通过查看他们的相似发送的内容以及可能是动态生成的关键字列表来确定.然后,我们可以向用户显示百分比匹配,以帮助他们找到重复项.

您能推荐一下这个过程的任何软件包以及过去如何做到这一点的任何想法吗?

我认为可以通过获取所有文本内容来完成直接复制

  • 剥离空白
  • 删除标点符号
  • 转换为大写或小写

然后形成MD5哈希以与任何新文档进行比较.如果用户编辑文档以添加额外的段落符号,则剥离这些项目应该有助于防止找不到欺骗.有什么想法吗?

此过程也可能作为夜间作业运行,如果计算要求太大而无法实时运行,我们可以在下次登录时通知用户任何重复项.然而,实时将是首选.

php linux duplicates document-management dms

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

在学习F#时,为什么建议在字段中指定类型而不是在赋值?

Learning F#教程中,有两种记录类型具有相同的字段标签集.

书籍记录

type Book = 
  { Name: string;
    AuthorName: string;
    Rating: int;
    ISBN: string }
Run Code Online (Sandbox Code Playgroud)

VHS记录

type VHS =
  { Name: string;
    AuthorName: string;
    Rating: string; // Videos use a different rating system.
    ISBN: string }
Run Code Online (Sandbox Code Playgroud)

如果您随后使用这些创建记录,则F#将假定最后一个定义是您要使用的定义(VHS).因此,在"重复标签名称"标题下,建议在"评级"标签名称中添加一个类型,如下所示:

let theFSharpQuizBook = 
  { Name = "The F# Quiz Book";
    AuthorName = "William Flash";
    Book.Rating = 5;
    ISBN = "1234123412" }
Run Code Online (Sandbox Code Playgroud)

我会认为这更清楚 - 具有赋值中指定的类型:

let theFSharpQuizBook : Book = 
  { Name = "The F# Quiz Book";
    AuthorName = "William Flash"; …
Run Code Online (Sandbox Code Playgroud)

f# types

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

在Gearman安排一份特定日期和时间的工作

从我所看到的,Gearman不支持预定的工作或延迟工作.我想也许预定的作业可能先排队at,然后在at时间段到期后添加到Gearman队列.

at任务是持久的,因为它们作为文件写入服务器的假脱机目录中的目录.因此,唯一的瓶颈可能是将任务添加到Gearman队列的简单脚本,因为at无法跨服务器分布.将它传递给Gearman来处理实际工作意味着我可以获得适当的工作记录等.

这是解决这个问题的最佳方法吗?您有任何其他想法吗?

我选择Gearman而不是其他队列解决方案的原因是它有一个PHP扩展.

我写的代码用于维护需要发送的电子邮件队列.因此,我可以指定我想在周五的9.50发送电子邮件到example@example.org,例如.

php unix linux gearman at-job

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