PHP仅在foreach中显示
刚接触PHP,我正在做一个练习,其中包括制作一个简单的动态网站,其中包含人员信息,链接到本地数据库 但是我被困在一个点上,我只能通过foreach循环显示任何东西 我的数据库如下所示(当然有更多的人):PHP仅在foreach中显示,php,arrays,foreach,hyperlink,Php,Arrays,Foreach,Hyperlink,刚接触PHP,我正在做一个练习,其中包括制作一个简单的动态网站,其中包含人员信息,链接到本地数据库 但是我被困在一个点上,我只能通过foreach循环显示任何东西 我的数据库如下所示(当然有更多的人): “alt=”“class=“拉左缩略图”> 但是什么都不管用(有更多的html代码,但我想在这里保持简短) 但是当我做了一个foreach并把文章放进去的时候: <?php foreach ($list_person as $person) : ?> 一切都显示出来了,但4
“alt=”“class=“拉左缩略图”>
但是什么都不管用(有更多的html代码,但我想在这里保持简短)
但是当我做了一个foreach并把文章放进去的时候:
<?php foreach ($list_person as $person) : ?>
一切都显示出来了,但4个人同时出现(这是合乎逻辑的,这是一个foreach)
我必须承认,我不知道如何使它成为一个独立的页面,每个不同的“id”都有。你能帮我吗?请保持简单
非常感谢!我做了一个简短的检查,如果您可以使用它:
function getAllPerson($id = null) {
$list_person = array();
$person1 = array(
"id" => 0,
"surname" => "John",
"name" => "Doe",
"img" => "https://randomuser.me/api/portraits/men/64.jpg");
$person2 = array(
"id" => 1,
"surname" => "Sam",
"name" => "Parker",
"img" => "https://randomuser.me/api/portraits/men/65.jpg");
$list_person[0] = $person1;
$list_person[1] = $person2;
if($id == null){
return ($list_person);
}
else{
return $list_person[$id];
}
}
现在您可以在页面中调用此函数
<?php $person = getAllPerson(1); ?>
<?php if(!empty($person)) { ?>
<section class="row">
<article class="column">
<h2><?php echo $person['name'] ?> <?php echo $person['surname'] ?></h2>
<img src="<?php echo $person['img'] ?>" alt="<?php echo $person['name'] ?> <?php echo $person['surname'] ?>" class="pull-left thumbnail">
</article>
</section>
<?php } ?>
“alt=”“class=“拉左缩略图”>
您可以使用相同的函数,如果您想获取所有用户,只需将参数字段保留为空:如getAllPerson()。好的,我的问题是waaaay off,并且我没有看到正确的位置。代码是干净的,我唯一的问题是$_GET['id']没有指向任何地方。。。哈桑·艾哈迈德是对的。我只是忘记了根据我正在查看的人更改页面名称,从而使我的页面具有动态性,因此它无法显示任何内容
不过非常感谢你的回答,通过你给我的练习,我可以理解更多的东西 你打的是什么身份证
id=??
这是数据库中的“id”,表示数组中的人号。您所说的“PHP仅在foreach中显示”是什么意思?你想只显示一个特定id的信息吗?是的,就是这样。我只在数据库中输入了一个id,但可能有100个。有一个主页,每个“id”都有一个foreach循环,链接到一个个人资料页面,我一直在使用这个页面。你是否代表了N个这样的用户$liste_person[N]=$personN?谢谢,我越来越近了:该部分的其余部分没有消失,但print_r($person)现在显示了完整的数组,它包含的内容不想在屏幕上显示。。。“函数getAllPerson($id=null)”中的id在其作用域中似乎未使用。我需要定义它吗?这就是我提到的,你可以传递一个id来加载特定的人,如果你不传递id,你会得到所有的人。我的问题更多的是“为什么它没有出现”。。。这似乎是我的问题的核心,我尝试了许多解决方案,但总是回到这个问题上:数据库中的内容只是不想显示。@Solomai您想显示什么,如果您想显示id为1的人员,只需调用函数getAllPerson(1),您将只获得该人员。类似地,如果您想显示id为20的人员,请调用函数getAllPerson(20),我将尝试显示我应该使用。但对我来说就是不行^^
function getAllPerson($id = null) {
$list_person = array();
$person1 = array(
"id" => 0,
"surname" => "John",
"name" => "Doe",
"img" => "https://randomuser.me/api/portraits/men/64.jpg");
$person2 = array(
"id" => 1,
"surname" => "Sam",
"name" => "Parker",
"img" => "https://randomuser.me/api/portraits/men/65.jpg");
$list_person[0] = $person1;
$list_person[1] = $person2;
if($id == null){
return ($list_person);
}
else{
return $list_person[$id];
}
}
<?php $person = getAllPerson(1); ?>
<?php if(!empty($person)) { ?>
<section class="row">
<article class="column">
<h2><?php echo $person['name'] ?> <?php echo $person['surname'] ?></h2>
<img src="<?php echo $person['img'] ?>" alt="<?php echo $person['name'] ?> <?php echo $person['surname'] ?>" class="pull-left thumbnail">
</article>
</section>
<?php } ?>