草庐IT

Mysqli_result

全部标签

php - 安全疑虑 : Mysqli vs PDO

这个问题在这里已经有了答案:mysqliorPDO-whataretheprosandcons?[closed](13个答案)关闭6年前。我已经开始创建我的网站,但现在我几乎没有疑虑了。我搜索过,MySqli面向对象很好用,因为您可以准备查询、使用bind_param并执行。我网站上的MySqli如下所示:PHPMySQLIPreventSQLInjection但是,这就够了吗?我的网站需要像这样的好代码来提高SQL注入(inject)的安全性,但它可以让我免受DDoS和污损?回到正题:Mysqli在安全和性能上与PDO不相上下?

php - mysqli:为什么我需要一条 'if' 语句来创建表?

我正在使用PHP学习MySQL以及如何创建表和插入数据。但我对以下代码特别困惑://SECTION1$sql="CREATETABLEingredients(idINT(6)UNSIGNEDAUTO_INCREMENTPRIMARYKEY,quanityINT(6)NOTNULL,packageINT(6)NOTNULL,itemVARCHAR(50),costDECIMAL(18,2),storeVARCHAR(50),reg_dateTIMESTAMP)";//SECTION2if($conn->query($sql)===TRUE){echo"Tableingredientscr

MySQL Select Query 生成动态列Result

我需要编写一个动态返回列的查询。例如,我有一个包含列的表tblTest:Id,Name,Type,Amount1,Receipt,Cash1002,Receipt,Card2003,Receipt,Cheque2504,Receipt,Card1505,Receipt,Cash1006,Payment,Cash3007,Payment,Cheque400SQL查询:SELECTName,SUM(CASEWHENType='Cash'THENAmountELSE0END)Cash,SUM(CASEWHENType='Card'THENAmountELSE0END)Card,SUM(CAS

PHP mysqli::自动提交 VS "START TRANSACTION"

在我们的数据库层对象中,我们一直使用通过mysqli::query执行的“STARTTRANSACTION”、“ROLLBACK”和“COMMIT”SQL语句来管理事务。今天做了一些研究,我发现了thismentionintheMySQLManual关于使用API级调用来管理事务VS使用直接SQL:ImportantManyAPIsusedforwritingMySQLclientapplications(suchasJDBC)providetheirownmethodsforstartingtransactionsthatcan(andsometimesshould)beusedin

php - 从 mysql 转换为 mysqli (mysql_fetch_array)

这个问题在这里已经有了答案:Howtochangemysqltomysqli?(12个答案)关闭去年。我有一些这样的php代码:$row=mysql_fetch_array(mysql_query("SELECT*FROM`tblFacilityHrs`WHERE`uid`='$uid'"));我现在正在尝试将其转换为mysqli_fetch_array,如下所示http://php.net/manual/en/mysqli-result.fetch-array.php(示例#1面向对象的风格)我不确定示例中“$result”的含义。到目前为止,这是我将代码转换成的内容:$value)

php - mysqli bind_param 和受影响的行错误

我是mysqli的新手,我已经查看了PHP手册等,但没有任何效果。我不太清楚哪里出了问题。我不断收到此错误:Warning:mysqli_stmt::bind_param()[mysqli-stmt.bind-param]:Numberofvariablesdoesn'tmatchnumberofparametersinpreparedstatementinC:\xampp\htdocs\new1\template.phponline165还有这个Warning:mysqli_stmt_affected_rows()[function.mysqli-stmt-affected-rows

php - 我是否正确使用 mysqli_real_escape_string?

我正在使用mysqli_real_escape_string的OOP方法转义字符串。我将输入的内容保存到session变量中以确保它正确转义。它似乎正确转义,但是当我检查输入数据库的内容时,我没有看到单引号和双引号前的斜线。所以在浏览器中我回显:Array([formContent]=>I\'malwayshere!)但是在数据库中我看到:I'malwayshere!这是否意味着我的代码某处有问题? 最佳答案 不,这很正常。mysqli_real_escape_string自动为您转义单引号。当你有字符串时,I'malwaysher

Java/hibernate : Decompressing a compressed result

我正在尝试解压缩MySQL的COMPRESS函数返回的值:SQLQueryquery=session.createSQLQuery("SELECTID,COMPRESS(TEXT_COL)ASTEXT_COLFROMTABLEWHEREIDIN(1,2,3,...);").addScalar("ID",Hibernate.INTEGER).addScalar("TEXT_COL",Hibernate.TEXT);Listlist=query.list();for(Object[]result:list){Stringtext=decompress(((String)result[1])

php - Mysqli准备语句(SQL注入(inject)预防)

停止使用已弃用的mysql_*函数后,我切换到mysqli。但是后来,我注意到非准备语句对于SQL注入(inject)是不安全的。然后,我再次更改了我的代码。我所拥有的是以下函数,它检查数据库中是否存在变量$ID并打印该行的title的值:functionshowPostTitle($ID,$mysqli){$result=$mysqli->query("SELECTID,titleFROMblogwhereID=$ID");$row=$result->fetch_array(MYSQLI_BOTH);echo$row['title'];}我改成了这样:functionshowPost

php - 在 mysqli 中使用 'config.php' 文件

我最近被告知停止使用mysql_query(),而是改用mysqli()。不用说,我在代码中进行这些更改时遇到了困难。我很想修复我目前拥有的东西,但是我也在寻找最有效(阅读最少输入)的方式来循环下面的示例。在我的config.php文件中connect($host,$user,$password,$database);if(mysqli_connect_errno()){exit('Connectfailed:'.mysqli_connect_error());}?>在我的index.php中$i=0;$getFundsQuery="SELECT*FROMfund";$getFunds