草庐IT

mysqli_stmt_bind_param

全部标签

php - 尝试使用 php 函数返回 sqlsrv_query 结果时出现“不是有效的 ss_sqlsrv_stmt 资源”错误

我最近将一个PHP应用程序从mssql切换到sqlsrv,并希望继续使用几个自定义函数来处理我的所有SQL请求。我得到一个错误Warning:sqlsrv_fetch_array():2isnotavalidss_sqlsrv_stmtresourcein...当使用以下函数处理所有sqlsrv_query()调用时:"db","UID"=>"uid","PWD"=>"pwd");$conn=sqlsrv_connect($serverName,$connectionInfo);if($conn===false){die(print_r(sqlsrv_errors(),true));}

php - Mysqli 查询返回空结果

我正在尝试使用以下代码从我的数据库中获取一些数据:prepare($sql2)ortrigger_error($mysqli2->error."[$sql2]");$id_for_wall='43';$stmt2->bind_param('s',$id_for_wall);$stmt2->execute();$stmt2->bind_result($message);$stmt2->store_result();$stmt2->fetch();echo$message;?>我的问题是我的echo中出现空字符串。但如果我在我的phpmyadmin中运行相同的查询,我会得到很好的结果。感谢

PHP mysqli 在命令行中工作,但在页面上不工作

红帽Linux服务器、Apache2.2、PHP5.5.4当我在命令行中运行它时,一切似乎都很好:php-r'$mysqli=newmysqli("127.0.0.1","un","pw","things","3306");'与此同时,我有一个无法运行的.php文档。我收到这个错误...PHPFatalerror:Class'mysqli'notfoundin[/path/to]/vars.phponline2来自这段代码:其他.php页面(不使用mysqli)工作正常。知道这里发生了什么吗?提前致谢。 最佳答案 就像我说的,今天我

php - Laravel 5 通配子域+路由模型绑定(bind)

所以当你在类似这样的通配符子域组路由中定义资源Controller时:Route::group(array('domain'=>'{subdomain}.example.com'),function(){Route::resource('users','UserController');});在RouteServiceProvider上$router->model('user','App\User');在UserControllershow方法上:publicfunctionshow($user){return$user;}我得到的是子域名而不是用户资源。这是因为subdomain参数

php - 运行 PHP5 : access denied to MySQLi connection but success for MySQL

我运行这段代码得到如下图所示的输出:问题是,我不明白为什么会这样:$conn=@mysql_connect('host','user','pass')ordie(mysql_error());@mysql_select_db('dbName')ordie(mysql_error());$query="SELECT*FROMClients";$result=@mysql_query($query)ordie(mysql_error());if($result){$outp="";while($row=mysql_fetch_assoc($result)){if($outp!=""){$o

Windows 上的 PHP/MySQLi : inserts into a MySQL innoDB Table increases the AUTO_INCREMENT column by 2

当我在PHP进程中通过PHPmysqliAPI使用准备好的语句在Windows上执行简单插入时,定义的AUTO_INCREMENT列增加2而不是1:INSERTINTO`table`(`name`)VALUES(?)在一个PHP进程中执行多个插入(在单独的事务中一个接一个地插入)时,它会增加1。当我通过phpmyadmin使用相同的SQL查询时,它总是增加1。在上述INSERT之前或之后没有其他INSERT或UPDATE语句。之前只有一个SHOW和一些SELECT语句。我找不到这个问题的原因。这种行为的原因可能是什么?主要代码部分:set_charset('utf8');}}//[..

php - 扩展 mysqli_result - 它使用 store_result() 还是 use_result()

我用返回mysqli_result的子项的查询方法编写了一个mysqli的子项。此结果子项将具有我的应用独有的其他方法。publicMySQLextendsmysqli{publicfunctionquery($query){if($this->real_query($query)){if($this->field_count>0){returnnewMySQL_Result($this);}returntrue;}returnfalse;}}classMySQL_Resultextendsmysqli_result{publicfunctionfetch_objects(){$row

php - laravel 在使用选择大小写和参数绑定(bind)时分页

Laravel版本:5.5PHP版本:7你好,我想执行这个查询:select(casewhen(titlelike'my-keyword')then1when(descriptionlike'my-keyword')then2)asorderingfromproductswhereid>10;当我通过查询构建器执行此操作时:$products=DB::table('products')->select(DB::raw('(casewhen(titlelike'?')then1when(descriptionlike'?')then2)asordering'))->where('id',

php - 如何从 MySQLi 准备好的语句中查看呈现的(原始)查询?

我正在为我的PHP/MySQLi应用构建一个日志记录类。我显然可以记录原始准备语句(带问号),但无需手动解析它,无论如何可以看到在MySQL中执行的实际原始查询吗?谢谢! 最佳答案 在MySQL中打开查询日志记录并监控mysql查询日志文件。在mysqld部分的my.cnf或my.ini文件中添加一个指令:log=/path/to/my/log/file 关于php-如何从MySQLi准备好的语句中查看呈现的(原始)查询?,我们在StackOverflow上找到一个类似的问题:

php - 为 PostgreSQL 中的 WHERE IN 子句绑定(bind)多行和多列

所以我想准备一个类似这样的查询:SELECTidFROMusersWHERE(branch,cid)IN$1;然后绑定(bind)一组可变长度的行,如(('a','b'),('c','d'))到它。换句话说,像这样:pg_prepare($users,'users_query','SELECTidFROMusersWHERE(branch,cid)IN$1');$result=pg_execute($users,'users_query',array("(('a','b'),('c','d'))");我需要将两者分开的原因是因为我想准备一次,然后以尽可能少的开销运行多次。