내 사이트에 페이지 이름의 데이터베이스가 있습니다. 쿼리를 반복하여 각 페이지 이름을 출력하고 싶습니다.쿼리 결과의 마지막 항목 - PHP
// Site Menu Items
try {
$mds_system1 = new PDO('mysql:dbname=mds_system;host=127.0.0.1', 'root', '');
} catch (PDOException $ex) {
echo 'Connection failed: ' . $ex->getMessage();
}
$sql = "SELECT longName, shortName, `position`, standalone FROM `site-menu`";
$sitemenu = $mds_system1->query($sql);
내가 다음 쿼리를 통해 루프 그래서 (사이트의 페이지를 편집 할 수있는 CMS의 일부) :
$n=1;
foreach ($sitemenu as $item) {
echo "<a href='?page=edit&edit=".$item['shortName']."' target='_self'>";
if ($n==count($sitemenu)) {
echo $item['longName']."</a><br />";
}
else {
echo $item['longName']."</a> | ";
}
$n++;
}
내가 거기 싶습니다 내가 PDO를 사용하여 내 쿼리를 수행 한 마지막 결과가 끝나면 구분 기호가되지 않아야합니다. 많은 코드 예제에 따르면이 코드 은이어야합니다. 그러나 "count ($ sitemenu)"변수는 결과의 수와 상관없이 항상 "1"로 설정됩니다. 따라서 아무 일도 일어나지 않습니다. PDO에서 시도 할 수없는 코드입니까?
아마도 어리석은 질문입니다. $ sitemenu가 PHP 배열입니까? – Helen
'어리석은'것은 아니지만 가장 현명한 질문 중 하나입니다. –
하나의 테이블 만 사용되는 경우 테이블 이름을 지정할 필요가 없습니다. 코드를 좀 더 읽기 쉽게 만들었습니다. –