私は、セッションとページURLの行を持つテーブルを取って、セッションを含む各行と訪問されたすべてのページが '|'で区切られたテーブルに入れようとしています。PHP implodeが動作しません
以下のコードは、URLが隣にないセッションのみを返します。私がここで間違っていたことに関するアイデアは?
<?php
$html = "<table>\n";
$html .= "<tr>\n<th>SESSION</th>\n<th>PATH</th>\n</tr>\n";
$paths = array();
$sql = "SELECT session_id, page_url FROM pageviews";
$result = mysqli_query($conn, $sql);
$got_rows = mysqli_num_rows($result);
if ($got_rows) {
while ($row = mysqli_fetch_array($result)) {
array_push($paths[$row['session_id']], $row['page_url']);
}
foreach ($paths as $session => $page) {
$html .= "<tr>\n";
$html .= '<td>' . $session . "</td>\n";
$html .= '<td>' . implode('| ', $page) . "</td>\n";
$html .= "</tr>\n";
}
} else {
$html .= '<td colspan="2">No results</td>' . "\n";
}
$html .= "</table>\n";
echo $html;
if (!mysqli_query($conn,$sql)) {
die('Error: ' . mysqli_error($conn));
}
mysqli_close($conn);
?>
NULLが与えられますが、テーブルにはエントリがいっぱいです – Topher
コードが変更されて、現在空白の画面が表示されているようです。初期にinitをインクルードする呼び出しがあり、うまく動作します。 – Topher
あなたの問題を修正しました。私は今、これが実現する何 アレイ ( [f637f5a85f8c911f596e2cfe775a1f16] => leadfactory.ca/analytics/testpage2.php [74e1ad9b538632afce44fd732f318a79] => leadfactory.ca/analytics/testpage2.php ) :だから私はこれを取得します一意のセッションだけを返し、すべてのページで複数のセッションを1回以上リストしないことです。 – Topher