Ich suche eine Tabelle in meinem DB
, um ein Häkchen zurückgeben, wenn ein Name eine $_GET['name']
Variable entspricht, die ich in der URL übergeben habe.Kann nicht einfach If/Else-Anweisung zu arbeiten
Ich möchte ein Häkchen angezeigt, wenn der Name existiert und ein Kreuz, wenn es nicht existiert.
Der Zweck besteht darin, einen Rota/Zeitplan der Verfügbarkeit zu füllen.
Der Code, den ich bisher habe;
<?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; ?>
Mein Code für die Abfrage ist;
$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);
Meine Tabelle enthält drei Reihen;
- ID
- person_id
- PERSON_NAME
Das Array I verwendet habe, ist;
Array
(
[0] => Array
(
[rota_id] => 16
[person_id] => 0
[person_name] => Gina
)
)
Sie werden sehen, dass Gina existiert - also, wenn ?name=Gina
in meiner URL ist, sollte ein Häkchen angezeigt, aber ?name=Fred
oder ?name=John
etc ist in meiner URL sollte ein Kreuz angezeigt.
Problem: Das Häkchen wird angezeigt, wenn der Name existiert, aber das Kreuz wird nicht angezeigt, wenn der Name nicht existiert.
Was ist das aktuelle Problem? Geht es immer ein wenn oder sonst? –
haben Sie die Werte von $ rota_sunday ['person_name'] und $ _GET ['name'] überprüft?Sie sollten nach Leerzeichen und auch nach Fällen suchen. –
Das Häkchen wird angezeigt, wenn der Name existiert, aber das Kreuz wird nicht angezeigt, wenn der Name nicht existiert. – Ben