「www.bbc.co.uk、www.itv.co.uk」など、コンマで区切られた URL のリストを受け入れるリンクと呼ばれるフィールドがあります。
フィールドの内容を出力するときは、次のようなコードでラップします。
<li><a href='http://<?php echo htmlout($name['links']); ?>'><?php echo htmlout($name['links']); ?></a></li>
これは、リンクが 1 つ追加された場合は正常に機能しますが、複数ある場合は問題が発生します。
たとえば、2 つのリンクがあり、1 つは www.bbc.co.uk で、もう 1 つは www.itv.co.uk で、そのリンクにカーソルを合わせると (2 つではなく 1 つのリンクです)、次のように表示されます。
http://www.ts.co.uk%2C%20www.bbc.co.uk/
コンマで区切られているため、これをフックとして使用して URL を分割する方法があるのではないかと考えていますが、これが可能かどうかはわかりません。
どんな助けでも大歓迎です。ありがとう
以下を編集
私はすでに配列を持っているので、以下にいくつかのコードを追加しました。配列内に配列を含めることはできますか? この場合、私はすべきですか?提案されたコードをどこにドロップすればよいですか?
INDEX.PHP (コントローラー)
include $_SERVER['DOCUMENT_ROOT'] . '/includes/db.inc.php';
try
{
$sql = "SELECT player.id, player.name AS name, age, position, height, weight, GROUP_CONCAT(distinct previousclubs.name) previousclubs,
satscore, gpa, GROUP_CONCAT(distinct link) link, email
FROM player INNER JOIN playerpreviousclubs
ON player.id = playerid
INNER JOIN previousclubs
ON previousclubid = previousclubs.id
INNER JOIN links
ON links.playerid = player.id
WHERE email = '$username'";
$result = $pdo->query($sql);
}
catch (PDOException $e)
{
$error = 'Error fetching details: ' . $e->getMessage();
include 'error.html.php';
exit();
}
foreach ($result as $row)
{
$names[] = array(
'id' => $row['id'],
'name' => $row['name'],
'age' => $row['age'],
'position' => $row['position'],
'height' => $row['height'],
'weight' => $row['weight'],
'previousclubs' => $row['previousclubs'],
'satscore' => $row['satscore'],
'gpa' => $row['gpa'],
'links' => $row['link'],
'email' => $row['email']
);
}
include 'profiles.html.php';
現在、私のテンプレートは次のようになっています。
プロファイル.HTML.PHP
<p>Welcome <?php echo $row['name'] ?> . Below are your profile details:</p>
<?php foreach ($names as $name): ?>
<form action="" method="post">
<ol>
<li class="listleft">Name:</li>
<li><?php echo htmlout($name['name']); ?></li>
<li class="listleft">Age:</li>
<li><?php echo htmlout($name['age']); ?></li>
<li class="listleft">Position:</li>
<li><?php echo htmlout($name['position']); ?></li>
<li class="listleft">Height:</li>
<li><?php echo htmlout($name['height']); ?></li>
<li class="listleft">Weight:</li>
<li><?php echo htmlout($name['weight']); ?></li>
<li class="listleft">Previous Clubs:</li>
<li><?php echo htmlout($name['previousclubs']); ?></li>
<li class="listleft">GPA:</li>
<li><?php echo htmlout($name['satscore']); ?></li>
<li class="listleft">SAT Score:</li>
<li><?php echo htmlout($name['gpa']); ?></li>
<li class="listleft">Links:</li>
<li><a href='http://<?php echo htmlout($name['links']); ?>'><?php echo htmlout($name['links']); ?></a></li>
</ol>
</form>
<?php endforeach; ?>