首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP:使用什么?

问PHP:使用什么?
EN

Stack Overflow用户
提问于 2010-12-06 00:31:41
回答 3查看 76关注 0票数 1

好的,我正在为我当地的城市做一个社区项目。

目前,我只制作了登录页面和会话内的一个页面。

现在,在我编写更多代码之前,我想确保进一步的编码(也许重新编码我到现在为止所做的事情)是简单和安全的。

我正在使用普通的直接mysql_query()与数据库对话。

我看到越来越多叫做"PDO“的库中的东西,还有其他一些东西。它们是不是更安全?也许更快?你是如何使用它的?

我的意思是,当我处理查询时,我只使用简单的select,where,from,insert,delete,group by等。你在PDO中做什么?您能将普通查询中的查询转换为PDO语句吗?

示例:如何在PDO中编写以下代码:

代码语言:javascript
复制
mysql_quey("SELECT * FROM users WHERE id = '$id'");

任何到PDO教程的链接,有相对正常的英语理解将是很棒的。

或者也许有比PDO更好的替代方案?我不需要最大的极限,最好的,最高级的。我只想让它安全,以防止正常的和典型的SQL注入。

任何详细和充分知情的答案将被接受。

EN

回答 3

Stack Overflow用户

发布于 2010-12-06 00:46:54

PDO要好得多,原因如下:

使用准备好的语句,您可以像这样编写代码:

代码语言:javascript
复制
$sth = $dbh->prepare('SELECT * FROM users WHERE id=:id');
$sth->execute(array(':id'=>$id));

有关详细信息,请参阅documentation on prepare。

票数 1
EN

Stack Overflow用户

发布于 2010-12-06 00:44:20

你应该使用一个框架。它们有很多: Kohana,Symfony,CakePHP,CodeIgniter等等。

大多数将不仅处理数据库问题(如mySQL注入),还将处理许多传统功能以及模板、可重用元素、路由等。

看一下它们。

票数 0
EN

Stack Overflow用户

发布于 2010-12-06 00:44:55

在与MySQL这样的SQL数据库交互时,处理安全问题的最方便的方法是使用预准备语句。有了这些,您不必转义值,因为查询连接了两个部分:语句本身(带有占位符的通用部分)和稍后添加到正确位置的值。这是针对SQL注入的最强大的保护形式。

像PDO这样的库提供了其他优点,例如抽象(除非你需要特定于数据库平台的技巧,否则即使你改变了数据库管理系统,你也可以重用相同的代码),OO接口,帮助函数,与对象更好的交互(参见ORM),以及其他你可能需要也可能不需要的东西,这取决于你的项目。

最后,我建议考虑一个比简单的mysql_*更高级的库,因为它只是最基本的交互。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4359823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档