MySQL 始终查询 returns 在 Azure 应用服务 + Azure 数据库服务器中仅查询“1”

MySQL Query always returns only '1' in azure app service + azure database server

目前,我正在使用 azure 应用程序服务和 azure 数据库服务器为 mysql 编码。

执行'select'语句时,只返回'1'。

我认为这不是连接问题,因为 'insert' 语句工作正常。

这是我在 Azure 应用服务上的 php 代码 运行。

error_reporting(E_ALL); 
ini_set('display_errors',1); 
include('dbconnectr.php'); 

$id = $_GET['id'];
$stmt = $con->prepare('select * from contents where id='.$id);
$stmt->execute();
$result = $stmt->fetch();
echo $result; 

问题是什么?

这个脚本会帮助你

error_reporting(E_ALL); 
ini_set('display_errors',1); 
include('dbconnectr.php'); 

$id = $_GET['id'];

$stmt = $con->prepare("select * from contents where id=?");

/* bind parameters */
$stmt->bind_param("i", $id);

/* execute query */
$stmt->execute();

/* bind result variables */
$stmt->bind_result($result);

/* fetch value */
$stmt->fetch();

print_r($result);

我使用绑定来保护自己免受 sql 注入。
所以我使用 bind_param 绑定参数,然后使用 execute 执行命令,然后将结果绑定到 bind_result 中,然后使用获取并填充结果变量和 Done