草庐IT

SELECT语句

全部标签

php - Laravel 和 Carbon - DiffInDays If 语句

我想我有一个相对简单的问题,我只是觉得我误解了它的一个方面。我有一个索引页,其中一个表格单元格中有一个if语句:@if(Carbon\Carbon::parse($shipment->due_date)->diffInDays(false)>0&&Carbon\Carbon::parse($shipment->due_date)->diffInDays(false)错误的地方是我想声明的地方,如果那一天是future,比如明天与今天相比,我将返回-1,而如果我指的是昨天,我将返回1返回。问题是我正在尝试使用这些文档,但无论我以何种方式尝试它们,它们都在为我排队:http://carbo

php - mysqli 准备好的语句不转义哪些字符?

我正在尝试强化我的一些PHP代码并使用mysqli准备好的语句来更好地验证用户输入并防止注入(inject)攻击。我不再使用mysqli_real_escape_stringasitdoesnotescape%and_.但是,当我将查询创建为mysqli准备语句时,同样的缺陷仍然存在。该查询根据用户名提取用户盐值。我会对密码和其他查找执行类似的操作。代码:$db=newsitedatalayer();if($stmt=$db->_conn->prepare("SELECT`salt`FROMadminsWHERE`username`LIKE?LIMIT1")){$stmt->bind_

php - 这安全吗? ADOdb 准备语句

我正在使用ADOdb连接到我的MSSQL数据库。我想知道这是否足以防止SQL注入(inject)?我正在使用的准备好的查询是:$db=ADONewConnection('odbc_mssql');$dsn="Driver={SQLServer};Server=SERVNAME;Database=DBNAME;";$ADODB_COUNTRECS=false;$db->Connect($dsn,'LOGIN','PASS');$sql='SELECTlogin,etcFROMusersWHERElogin='.$db->Param('0').'ANDpass='.$db->Param('

PHP MySQLi 准备语句 - SELECT

我的SELECT语法有问题。代码:$stmt=$this->con->prepare("SELECT?FROM`shop_items`WHERE`id`=?");$stmt->bind_param("si",$what,$itemsId);$stmt->execute();$stmt->bind_result($res);$stmt->fetch();echo$res;当我想选择“名称”时,它会回显“名称”而不是来自数据库的结果。如何解决? 最佳答案 占位符?只能在准备语句中用于替换值,不能用于字段名、表名或语句。您正在尝试将其用作

PHP MySQLI 准备好的语句在 get_results() 处中断

我是mysqli准备语句的新手,事实上这是我第一次尝试。我有这段代码,我在每个命令之间放置了echo,它显示aaa和bbb但不显示ccc,我在这里做错了什么?没有出现错误,只是一个空白屏幕:prepare("SELECTtitleFROM`in-the-press`")){$stmt->execute();echo'aaa';$stmt->bind_result($title);echo'bbb';$result=$stmt->get_result();echo'ccc';while($stmt->fetch()){printf("%s%s\n",$title);}echo'ddd';

php - 在 password_hash 值上使用准备好的语句有什么意义吗?

当使用password_hash()函数生成散列密码时,为什么我想在将它插入数据库时​​使用准备好的语句?我的假设是我不需要为密码使用准备好的语句,但为了保持一致性,使用一个也没有坏处。附加问题:如果我使用password_hash函数的PASSWORD_DEFAULT参数,它目前将使用bcrypt算法,但将来可以替换为不同的算法。如果我不使用准备好的语句,future的算法是否会使用单引号或其他可能破坏SQL语句的符号? 最佳答案 isthereanyreasonwhyIwouldwanttouseapreparedstateme

php - 使用 zend db 插入 .. select from ..

我有以下原始查询,它将商品从购物车移动到订单表:insertintowebshop_order_item(order_id,product_id,count)select1,product_id,countfromwebshop_cart我正在使用ZendDB进行所有建模。我想知道是否有一种方法可以在不使用原始查询的情况下实现上述查询的目标? 最佳答案 目前还没有办法从zenddb中的select插入。但是,如果您只需要一个适配器使用此功能,则可以使用类似于下面给出的方法:publicfunctioninsertSelect($ta

php - 对用户定义函数中的 return 语句感到困惑

我对返回声明几乎没有疑问。a)是否必须在用户定义的函数中定义返回语句?b)如果我只定义一个没有任何参数的return语句,它仍然有效吗?它会返回空值吗?c)下面的函数有效吗?functionadmin_credential($password=0,$email=0){if($password!=0){$password=sha1($password);$query="UPDATEadminsSETpassword='$password'";$result=mysql_query($query);}if($email!=0){$query="UPDATEadminsSETemail='$

php - 在带有 'IN(.....)' 子句的查询中使用准备好的语句?

有没有(棘手的/非标准的)方法来做到这一点?想要什么$stmt=$db->prepare('SELECTtitleFROMepisodeWHEREidIN(?,?,?,?);工作?因此,如果我想搜索可变数量的ID,我可以这样做吗$ids=array(1,2,3,4,5,6,7);$idSection=implode(array_pad(array(),count($ids),'?'))//Togive?,?,?,?,?,?,?$stmt=$db->prepare('SELECTtitleFROMepisodeWHEREidIN($idSection);$stmp->execute($i

php - socket_select 立即返回 false 但没有错误代码

我正在玩socket_select,但是在一个主机上,这个函数做了一些奇怪的事情:立即返回,而不是等待5秒返回false,表示有错误但是socket_last_error()返回0(成功)。此服务器的phpinfo():http://jsfiddle.net/Lmrfe/embedded/result/$server=socket_create(AF_UNIX,SOCK_STREAM,0);$r=socket_bind($server,'/some/file/somewhere');$r=socket_listen($server);//noneoftheabovesocket_*re