0

さて、すべてのメンバーを表示するメンバー データベース スクリプトがあり、そのページに移動するとすぐに、セッション ['id'] がランダムなものに突然変更されます。なぜこれを行うのかはわかりませんが、ここにコードを示します。テストしたところ、このスクリプトがロードされたときにのみ実行されることがわかりました。

私はただ愚かで、バグを見つけることができませんか?

<?php

$link = mysqli_connect("localhost", "lunar_lunar", "", "lunar_users");

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
$result = mysqli_query($link, "SELECT * FROM users ORDER BY username");
while($row = mysqli_fetch_assoc($result)) {
    $id=$row['id'];
    $username=$row['username'];
    $email=$row['email'];
    $firstname=$row['firstname'];
    $lastname=$row['lastname'];
    $motto=$row['motto'];
    $bio=$row['bio'];
$result4 = mysqli_query($link, "SELECT * FROM photo where id='$id'");
$row4 = mysqli_fetch_assoc($result4);
$image=$row4['filename'];
$src = (empty($image)) ? "upload/your-photo.jpg" : "site_images/$id/$image";
$motto = (empty($motto)) ? "No motto" : $motto;
$bio = (empty($bio)) ? "No biography" : $bio;
echo "<div class='panel panel-default'>
  <div class='panel-heading'>
    <h3 class='panel-title'><a href='public.php?id=".$id."'>".$username."</h3></a>
  </div>
  <div class='panel-body'>
  <div class='gravatar span3' style='padding:0px;margin:0px;'>
  <img src='
    ".$src."' alt='' width='85' height='85'>
    </div>
    <br />
    <div class='page-header'>
  <br />
  </div>
  <p style='margin-right:450px;'>
  ".$bio."
  </p>
  </div>
  <div class='panel-footer'>".$motto."</div>
</div>";
       }
?>

ドキュメントの先頭:

  <?php
  session_start();
if(!isset($_SESSION['id'])) {
header("Location: index.php");
} else {

}
?>

基本的に、サインインしているかどうかをチェックします。この同じスクリプトを使用してすべてのページをチェックするので、それが機能することがわかります。

4

1 に答える 1

0

申し訳ありませんが、これは私の間違いでした。固定に変更$idしたときに$idを上書きしていました。$memid

于 2013-10-13T08:21:09.503 に答える