草庐IT

PDO_mssql

全部标签

php - PDO::__construct(): php_network_getaddresses: getaddrinfo 失败:名称或服务未知

在StackOverflow上有很多关于这个主题的问题,但没有一个符合我的情况。我在PHP5.4.7中使用Lampp,在我用PHP开发我的第一个PDO程序之前它运行良好。当我使用$con=newPDO("mysql:host='localhost';dbname='data';charset=utf8",'root','');对于连接我得到这个错误。我需要在php.ini中激活一些东西吗? 最佳答案 "mysql:host='localhost';dbname='data';charset=utf8"您的DSN格式错误,其中不应该包

php - PDO 准备好的语句 - 参数名称中的冒号是做什么用的?

我看过很多文章在使用PDO时在命名参数前使用冒号(:),还有一些不使用冒号。我会尽快不使用冒号,只是因为它少了一个按键并且更容易阅读。它似乎对我来说工作正常,但我很好奇在使用冒号时是否遗漏了一些重要的东西?例如,这工作得很好:functioninsertRecord($conn,$column1,$comumn2){try{$insertRecord=$conn->prepare('INSERTINTOTable1(column1,column2)VALUES(:column1,:column2)');$insertRecord->execute(array('column1'=>$c

php - PDO 准备好的语句 - 参数名称中的冒号是做什么用的?

我看过很多文章在使用PDO时在命名参数前使用冒号(:),还有一些不使用冒号。我会尽快不使用冒号,只是因为它少了一个按键并且更容易阅读。它似乎对我来说工作正常,但我很好奇在使用冒号时是否遗漏了一些重要的东西?例如,这工作得很好:functioninsertRecord($conn,$column1,$comumn2){try{$insertRecord=$conn->prepare('INSERTINTOTable1(column1,column2)VALUES(:column1,:column2)');$insertRecord->execute(array('column1'=>$c

php - 扩展 PDO 语句类

是否可以扩展PHPPDO语句类来添加自定义方法?这与扩展基本PDO类不同。如果是这样,由于仅在通过PDO类运行查询时才返回语句类,该怎么做呢? 最佳答案 您可以使用PDO::setAttribute()设置类:PDO::ATTR_STATEMENT_CLASS:Setuser-suppliedstatementclassderivedfromPDOStatement.CannotbeusedwithpersistentPDOinstances.Requiresarray(stringclassname,array(mixedcons

php - 扩展 PDO 语句类

是否可以扩展PHPPDO语句类来添加自定义方法?这与扩展基本PDO类不同。如果是这样,由于仅在通过PDO类运行查询时才返回语句类,该怎么做呢? 最佳答案 您可以使用PDO::setAttribute()设置类:PDO::ATTR_STATEMENT_CLASS:Setuser-suppliedstatementclassderivedfromPDOStatement.CannotbeusedwithpersistentPDOinstances.Requiresarray(stringclassname,array(mixedcons

php - 如何在 PDO fetchAll 中正确使用 while 循环

请对我放轻松,我刚刚开始学习PDO,并且仍在寻找将mysqli转换为PDO的方法。所以我有一个函数可以从我的数据库中获取内容functiongetContent(){$db=PDOconn();$query="SELECT*FROMpostsORDERBYidDESCLIMIT0,3";$sql=$db->prepare($sql);$row=$sql->fetchAll(PDO::FETCH_ASSOC);return$row;}通常当我在mysqli中返回$row时,我会在我的while循环中定义fetch_assoc()。while($row=$result->fetch_ass

php - 如何在 PDO fetchAll 中正确使用 while 循环

请对我放轻松,我刚刚开始学习PDO,并且仍在寻找将mysqli转换为PDO的方法。所以我有一个函数可以从我的数据库中获取内容functiongetContent(){$db=PDOconn();$query="SELECT*FROMpostsORDERBYidDESCLIMIT0,3";$sql=$db->prepare($sql);$row=$sql->fetchAll(PDO::FETCH_ASSOC);return$row;}通常当我在mysqli中返回$row时,我会在我的while循环中定义fetch_assoc()。while($row=$result->fetch_ass

php - 如何使用 PDO 清理输入?

当我使用PDO库时,是否需要在我的输入(例如$_POST和$_GET)上使用mysql_real_escape_string()?如何使用PDO正确转义用户输入? 最佳答案 如果您使用PDO,您可以参数化您的查询,无需转义任何包含的变量。参见here一个很棒的PDO入门教程。使用PDO,您可以使用准备好的语句将SQL和传递的参数分开,这消除了转义字符串的需要,因为这两者是分开保存的,然后在执行时合并,参数自动处理为字符串,来自上述来源://where$dbhisyourPDOconnection$stmt=$dbh->prepare

php - 如何使用 PDO 清理输入?

当我使用PDO库时,是否需要在我的输入(例如$_POST和$_GET)上使用mysql_real_escape_string()?如何使用PDO正确转义用户输入? 最佳答案 如果您使用PDO,您可以参数化您的查询,无需转义任何包含的变量。参见here一个很棒的PDO入门教程。使用PDO,您可以使用准备好的语句将SQL和传递的参数分开,这消除了转义字符串的需要,因为这两者是分开保存的,然后在执行时合并,参数自动处理为字符串,来自上述来源://where$dbhisyourPDOconnection$stmt=$dbh->prepare

php - 为什么在不修改现有数据的情况下更新表后 PDO rowCount() 返回 0?

我正在阅读有关如何使用PHP将数据插入和更新到MySQL表中的教程,代码如下所示。我的问题是当我点击更新但我没有修改任何数据时,rowCount()返回0并破坏代码。我的问题是,如果我只是用数据库中的相同值更新数据库,为什么rowCount()返回零?我的想法是,即使它是相同的数据,它仍然会被插入并返回更新行的计数?我猜它会在尝试更新之前检查数据?任何人都可以为我阐明这一点并提出解决方法吗?我已经盯着代码看了好几个小时了,一直想不出任何东西,谢谢。prepare($sql);//bindtheresults$stmt->bindColumn(1,$article_id);$stmt->