我在我的DB
中搜索一个表,如果名称与我在网址中传递的$_GET['name']
变量相匹配,则返回一个勾号。
如果名称存在,我想要显示一个勾号,如果不存在,我想要一个十字。
目的是填充可用性的时间表。
到目前为止我的代码
<?php foreach($rota_sun as $rota_sunday): ?>
<?php if(strpos($rota_sunday['person_name'], $_GET['name']) !== false) { ?>
<span style="color:green; font-size:22px;"><i class="fa fa-check" aria-hidden="true"></i></span>
<?php } else { ?>
<span style="color:red; font-size:22px;"><i class="fa fa-times" aria-hidden="true"></i></span>
<?php } ?>
<?php endforeach; ?>
我的查询代码是;
$query = "SELECT
rota_sunday.id AS rota_id,
rota_sunday.person_id,
rota_sunday.person_name
FROM rota_sunday WHERE rota_sunday.person_name = '$_GET['$name']'
";
try
{
$stmt = $conn->prepare($query);
$stmt->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
$rota_sun = $stmt->fetchAll(PDO::FETCH_ASSOC);
我的表包含三行;
我正在使用的数组是
Array
(
[0] => Array
(
[rota_id] => 16
[person_id] => 0
[person_name] => Gina
)
)
您会看到Gina存在 - 所以如果我的网址中有?name=Gina
,则应显示勾号,但我的网址中会显示?name=Fred
或?name=John
等,应显示十字。
问题:当名称存在时显示勾号,但在名称不存在时不显示叉号。
答案 0 :(得分:1)
一个工作示例: -
<?php $post_id = 27; // Endre denne ?>
<?php $image = wp_get_attachment_image_src( get_post_thumbnail_id("$post_id"), full); ?>
<div style="background-image:url('<?php echo $image[0]; ?>')">
<div class="col-md-6">
<h1><?php echo get_the_title("$post_id");?></h1>
<div>
<?php get_post_field( 'post_excerpt', $post_id ); ?>
<?php $excerpt = get_the_excerpt( $post_id ) ?>
<?php echo $excerpt; ?>
</div>
<div>
<a href="<?php echo get_permalink("$post_id");?>" rel="" id="trykklink" class="btn btn-outline-fill-white littluft nomarginleft" role="button" title="" onmouseover="this.title='';">Read more</a>
</div>
</div>
<div class="col-md-6">
</div>
</div>
输出: - http://prntscr.com/cf4ecd
注意: - 从这里下载font-awesome库: - http://fontawesome.io/get-started/
将整个文件夹放在当前的工作目录中
正确添加css文件。
这是工作目录结构: - http://prntscr.com/cf4fuk
更改您的查询: -
<link rel="stylesheet" href="font-awesome-4.6.3/css/font-awesome.min.css">
<?php
error_reporting(E_ALL); //check all type of errors
ini_set('display_errors',1); // display those if any happen
$_GET['name'] = 'fiksun';
$rota_sun = Array
(
'0' => Array
(
'rota_id' => 16,
'person_id' => 0,
'person_name' => 'Gina'
),
'1' => Array
(
'rota_id' => 16,
'person_id' => 0,
'person_name' => 'fiksun'
)
)
?>
<?php foreach($rota_sun as $rota_sunday): ?>
<?php if($rota_sunday['person_name']== $_GET['name']) { ?>
<span style="color:green; font-size:22px;"><i class="fa fa-check" aria-hidden="true"></i><?php echo $rota_sunday['person_name'];?></span>
<?php } else { ?>
<span style="color:red; font-size:22px;"><i class="fa fa-times" aria-hidden="true"></i><?php echo $rota_sunday['person_name'];?></span>
<?php } ?>
<?php endforeach; ?>
答案 1 :(得分:0)
此查询将仅从DB中选择一个人。
$query = "SELECT
rota_sunday.id AS rota_id,
rota_sunday.person_id,
rota_sunday.person_name
FROM rota_sunday WHERE rota_sunday.person_name = " . $_GET['name'] . "LIMIT 1";
try
{
$stmt = $conn->prepare($query);
$stmt->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
$rota_sun = $stmt->fetch(PDO::FETCH_ASSOC);
如果这个人存在,那么$ rota_sun将包含结果,如果没有,那么这将返回false,你将得到红叉。
<?php if($rota_sun) { ?>
<span style="color:green; font-size:22px;"><i class="fa fa-check" aria-hidden="true"></i></span>
<?php } else { ?>
<span style="color:red; font-size:22px;"><i class="fa fa-times" aria-hidden="true"></i></span>
<?php } ?>