我目前正在做一个项目,我当前的目标是在最终的 checkout 表单输入中打印有关特定用户的信息。
首先,我通过一个公共函数收集特定用户的信息:
public function getUserAddress($dbh)
{
$sql = "SELECT street, zip, city FROM address WHERE user_id=:user";
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':user', $this->uid);
$stmt->execute();
$userAddress = $stmt->fetchAll(PDO::FETCH_ASSOC);
$this->userAddress = $userAddress;
return $this->userAddress;
}
然后我将信息存储在一个名为$useraddress的变量中
$userAddress = $user->getUserAddress($dbh);
由于用户有两个地址,都带有“street”、“city”和“zip”,所以我将这两个数组都存储在$templatedata中。这样我就可以指定应该在哪个输入标记中打印出什么索引,而不必为每个插槽创建新函数。
$templateData['user']['address'] = $userAdress['street']." ".$userAddress['city']." ".$userAddress['zip'];
然而,打印出来似乎几乎是不可能的。当我var_dump$templatedata['user']['address']时,我似乎只得到了2个空字符串,其他什么都没有。
这只是我checkout.controller中的代码,但不知怎么的,这些信息似乎没有在我的模板页中找到。所有的路线和包含都是正确的,所以请注意这一点。
我对这一切都很陌生,所以我很感激能得到的任何帮助!
信息应如何呈现的图像https://gyazo.com/40fa06832207bd785ee038af4962bb1e
所以在这个例子中:“postort”=“城市”和“gatuadress”=“街道”
2条答案
按热度按时间ma8fv8wu1#
我总是可以具体地定义每一个,尽管这似乎有些牵强。像这样:
我基本上是在寻找另一个不需要太多重复的解决方案。
piok6c0g2#
PDO::fetchAll(PDO::FETCH_ASSOC)
将返回关联数组的数组;因此,要访问各个元素,您需要: