gpt4 book ai didi

php - 值没有从数据库 PHP 返回

转载 作者:行者123 更新时间:2023-12-01 00:41:53 25 4
gpt4 key购买 nike

新来的,我对这个问题束手无策。伪装很简单;我正在尝试根据 session cookie 中的值从数据库中选择一个用户 ID。我已经确认 SQL 可以正常工作,因为我已经通过 sql 本身运行它,我唯一能想到的是它没有执行或者我的提取或绑定(bind)是错误的。

<?php
session_start();
$cart = $_SESSION["cart"];

try{
require "connect.php";
$id = "SELECT id_no FROM eCustomer WHERE surname = :uid";
echo $id . '<br />';

$idfetch=$dbh->prepare($id);
$idfetch->bindValue(":uid", $_SESSION["uid"]);
$idfetch->execute();

$customer_id = $idfetch["id_no"];

echo $customer_id;

$dbh=null;

} catch (PDOExeption $e){
echo $e;
}
?>

这应该回显到我的浏览器

SELECT id_no FROM eCustomer WHERE surname = :uid
1

但它只是输出

SELECT id_no FROM eCustomer WHERE surname = :uid

我也试过不带bindValue直接把session变量放到sql语句中

$id = "SELECT id_no FROM eCustomer WHERE surname = '" . $_SESSION["uid"] . "'";

哪个输出到我的浏览器

SELECT id_no FROM eCustomer WHERE surname = 'Mclellan'

(麦克莱伦在我的 session cookie 中)

如有任何帮助,我们将不胜感激。

最佳答案

您实际上已经执行了该语句,但实际上您还没有->fetch()编辑它。你错过了那部分:

$results = $idfetch->fetchAll(PDO::FETCH_ASSOC);
// print_r($results);
foreach($results as $row) {
echo $row['id_no'];
}

旁注:

如果您只需要一行,那么单个 ->fetch() 调用就足够了:

$row = $idfetch->fetch(PDO::FETCH_ASSOC);
echo $row['id_no'];

关于php - 值没有从数据库 PHP 返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30217935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com