gpt4 book ai didi

php - 从 SELECT * FROM users WHERE url = "pretty url"开始,到使用 Lithium Framework 显示数据库中的 1 行

转载 作者:行者123 更新时间:2023-11-30 00:12:42 24 4
gpt4 key购买 nike

嗨,我是 php 和 mysql 的新手,直接开始使用 Lithium 框架......我知道,这是个坏主意。

但基本上我的问题是,我该如何去;

$users = \app\models\Users::findByUrl($this->request->query['url']);
return array(
'users' => $users,
);

在我的UsersController中,根据我的url中的查询字符串实际回显我的users/index.php.html页面中的1个特定数据行?

我想要的结构是 localhost/users/"url","url"是我的 MySQL 数据库中的一个值,在我的 Users 表中标记为 "url"。例如本地主机/用户/鲍勃。 “Bob”是“url”值。

我的 users/index.php.html 页面使用 foreach ($users as $user) 来回显这样的信息;

<?=$user->firstname ?>

障碍和困惑:

当我使用时;

$users = \app\models\Users::find('all');
return array(
'users' => $users,
);

在我的 UsersController 中,users/index.php.html 页面检索了我数据库中的所有用户。

内容显示正确,但我只需要点击用户的数据,所以这是我开始使用的时候; $users = \app\models\Users::findByUrl($this->request->query['url']);

当链接到用户页面时,我就是这样做的;

<?php if( $user->avatar ):?> 
<a href="/users/<?=$user->url?>">
<img class="img-responsive" src="/img/users/<?=$user->avatar?>" />
</a>
<?php else: ?>

不确定我是否需要向我的 Controller 添加条件,向我的路由器添加一些内容,更改我的 htaccess,或者使用参数做一些事情......请帮助,任何方向将不胜感激。

最佳答案

查找器默认返回所有内容。如果您想要单个对象,请执行以下操作:

Users::findFirstByUrl($this->request->query['url'])

...这是缩写:

Users::first(['conditions' => ['url' => $this->request->query['url']]])Users::find('first', ['conditions' => ['url' => $this->request->query['url']]])

关于php - 从 SELECT * FROM users WHERE url = "pretty url"开始,到使用 Lithium Framework 显示数据库中的 1 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919951/

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