【发布时间】:2015-07-30 21:25:30
【问题描述】:
我正在编写一段非常基本的代码来从 mysql 数据库中获取一个或(在大多数情况下)多行。
function getschema($mysqli){
$id = $_SESSION['user_id'];
$query = $mysqli->prepare("SELECT a.naam
FROM schemes AS a, aankoop AS b
WHERE b.aankoop_username_id = :userid && b.aankoop_schema_id = a.id");
$query->bind_param(':userid', $id, PDO::PARAM_INT);
$query->execute();
$result = $query->fetchAll();
echo ($result);
}
我从会话中获取用户 ID,并在准备好的语句中使用查询提取数据。 这个说法是正确的。我在 phpmyadmin 中尝试过,它返回了正确的值。
现在我想在我的 HTML 中使用这个函数......
<?php echo getschema($mysqli); ?>
但是我的代码没有返回任何东西,它甚至弄乱了我想要显示代码的 html 页面的布局。
我认为这可能与 fetchAll 命令有关。我也试过PDO::Fetch_ASSOC,但也没有用。
此外,我看不到 php 错误,即使它们在 php.ini 文件中启用。
【问题讨论】:
-
@AbraCadaver 为什么您将其发布为评论而不是答案?
-
@AbraCadaver,你的意思是把它作为一个值分配给一个文本区域还是你的意思是别的?我知道这将是一个数组,所以我必须在我的 html 页面中循环遍历它?
-
非常仔细地看你的代码;什么不属于一起?检查错误会告诉你。另外,您首先使用哪个 API 进行连接?另外,您在自定义函数中运行它。
-
我们也不知道会话是否开始
-
@Fred-ii-,会话已经开始,我可以在测试页面上回显它的内容。此外,我正在使用 mysqli api 与数据库连接,我终于能够打印出错误,我得到的是当我在测试页面上调用函数时调用未定义函数 getschema():foreach( getschema($mysqli) as $row) { echo $row['naam'];}。我还对查询做了一个小改动:&& 变成了 AND,我猜这在执行中并不重要。