PHP неопределенные ошибки индекса после входа в систему

0

Я загрузил этот проект где-то из Интернета и попытался получить доступ к страницам, которые хороши. но после входа в профиль желания я получаю только такие ошибки, которые я не могу решить. Кто-нибудь может мне помочь

Скриншоты страницы с ошибкой. Изображение 174551

Страницы, которые дают ошибку

friends.php

<?php
if(!isset($_SESSION)){
    session_start();
}
include("profilesql.php");
$result = mysql_query("SELECT * FROM addfriends where meid='$_SESSION[stuid]' ");
while($row = mysql_fetch_array($result))
  {
$uid1[$i] = $row["friendid"];
$i++;
  }

 $acrec1 = mysql_query("SELECT * FROM addfriends WHERE userid='$uid1[1]'");

while($row = mysql_fetch_array($acrec2))
  {
    $img1[0]=  $row["image"];
  }

  $acrec2 = mysql_query("SELECT * FROM addfriends WHERE userid='$uid1[2]'");

while($row = mysql_fetch_array($acrec2))
  {
    $img1[1]=  $row["image"];
  }

  $acrec3 = mysql_query("SELECT * FROM profile WHERE userid='$uid1[3]' ");

while($row = mysql_fetch_array($acrec3))
  {
    $img1[2]=  $row["image"];
  }

  $acrec4 = mysql_query("SELECT * FROM profile WHERE userid='$uid1[4]' ");
while($row = mysql_fetch_array($acrec4))
  {
    $img1[3]=  $row["image"];
  }
  ?>

profile.php Изображение 174551

<?php
include("header.php");
include("profilesql.php");
include("friends.php"); 
?>
<center>
<div class=container>
<div class=container>

<!-- head --><!-- navigation menu -->
<?php include("head.php"); ?>
<?php
include("menu.php"); 
$result = mysql_query("SELECT * FROM profile ORDER BY RAND()");
$i=0;
while($row = mysql_fetch_array($result))
  {
      if($row["userid"] != $_SESSION["stuid"] )
{ 
$img[$i] = $row["image"];
$uid[$i] = $row["userid"];
$i++;
  }
  }
  $result = mysql_query("SELECT * FROM stuacc where id");  

$strec = mysql_query("SELECT * FROM stuacc WHERE email='$_SESSION[logid]' ");

while($row = mysql_fetch_array($strec))
  {
$_SESSION["stuid"] =  $row["id"];

  }

$colrec = mysql_query("SELECT * FROM profile WHERE userid='$_SESSION[stuid]' ");

while($row = mysql_fetch_array($colrec))
  {
$cname = $row["coluni"];
  }

$acrec1 = mysql_query("SELECT * FROM stuacc WHERE id='$uid[0]' ");

while($row = mysql_fetch_array($acrec1))
  {
      $stid1 = $row["id"];
$name1 = $row["firstname"];
$gen1= $row["iam"];
  }

  $acrec2 = mysql_query("SELECT * FROM stuacc WHERE id='$uid[1]' ");

while($row = mysql_fetch_array($acrec2))
  {
          $stid2 = $row["id"];
$name2 = $row["firstname"];
$gen2= $row["iam"];
  }

  $acrec3 = mysql_query("SELECT * FROM stuacc WHERE id='$uid[2]' ");

while($row = mysql_fetch_array($acrec3))
  {
          $stid3 = $row["id"];
$name3 = $row["firstname"];
$gen3= $row["iam"];
  }

  $acrec4 = mysql_query("SELECT * FROM stuacc WHERE id='$uid[3]' ");

while($row = mysql_fetch_array($acrec4))
  {
          $stid4 = $row["id"];
$name4 = $row["firstname"];
$gen4= $row["iam"];
  }
?>


<div style="padding: 10px; text-align: left;">
<!-- body  content -->

    <table width="100%" height="382" border="0" >
  <tr>
    <td width="16%" rowspan="9" align="left" valign="top" bgcolor="#CCCCCC"><?php include("profileleft.php"); ?></td>
    <td width="55%" rowspan="9" valign="top"><table width="100%" border="1">
        <tr>
          <th scope="col"><strong>Welcome, <?php echo $_SESSION["logid"]; ?></strong></th>
          </tr>
        <tr>
          <td><strong>Number of visitors:
              <?php
if(isset($_SESSION['views']))
 $_SESSION['views']=$_SESSION['views']+1;
   else
 $_SESSION['views']=1;
 echo $_SESSION['views']; 
 ?>
          </strong></td>
          </tr>
        <tr>
          <td><strong>College Name : </strong><b><?php echo $cname ; ?></b></td>
        </tr>
        <tr>
          <td>&nbsp;</td>
        </tr>
      </table>
      <table width=100%>

        <tr valign=top align=center>
          <td colspan="4" align="left"><strong>Request Friends</strong></td>
          </tr>
        <tr valign=top align=center>
            <td><a href="friendsprofile.php?fid=<?php echo $stid1 ; ?>"><img src="<?php echo $img[0] ; ?>" width="100" height="150" border="0" alt=""><br />
             <?php echo $name1 ; ?><br />

            </a><br></td>
            <td><a href="friendsprofile.php?fid=<?php echo $stid2 ; ?>""><img src="<?php echo $img[1] ; ?>" width="100" height="150" border="0" alt=""><br />
              <?php echo $name2 ; ?>
            </a><br></td>
            <td><a href="friendsprofile.php?fid=<?php echo $stid3 ; ?>""><img src="<?php echo $img[2] ; ?>" width="100" height="150" border="0" alt=""><br />
             <?php echo $name3 ; ?>
            </a><br></td>
            <td><a href="friendsprofile.php?fid=<?php echo $stid4 ; ?>""><img src="<?php echo $img[3] ; ?>" width="100" height="150" border="0" alt=""><br />
              <?php echo $name4 ; ?>
            </a><br></td>

        </tr>
        </table>
      <table width="100%" border="1">
      <tr>
        <th colspan="2" scope="col"><br />            &nbsp;     <?php echo $fname. " " . $lname; ?></th>
      </tr>
      <tr>
        <td colspan="2"><strong>College Name : </strong><b><?php echo $cname ; ?></b></td>
      </tr>
      <tr>
        <td width="51%"><strong>City :<?php echo $_GET["fmes"]; ?></strong></td>
        <td width="49%"><?php echo $city; ?></td>
        </tr>
      <tr>
        <td height="23"><strong>State:</strong></td>
        <td><?php echo $state; ?></td>
        </tr>
      <tr>
        <td height="23"><strong>Pincode:</strong></td>
        <td><?php echo $pincode; ?></td>
        </tr>
      <tr>
        <td height="23"><strong>Country:</strong></td>
        <td><?php echo $country; ?></td>
        </tr>
      </table></td>
      <td height="23" colspan="2" background="" bgcolor="#CCCCCC"><strong><u>My friends</u></strong></td>
  </tr>
  <tr>
    <td width="14%" height="23" bgcolor="#CCCCCC" align="center" valign="top"><img src="<?php echo $img[0] ; ?>" alt="" width="71" height="53" /></td>
    <td width="15%" height="23" bgcolor="#CCCCCC" align="center" valign="top"><img src="<?php echo $img[1] ; ?>" alt="" width="71" height="53" /></td>
  </tr>
  <tr>
    <td height="4" align="center" valign="top" bgcolor="#CCCCCC"><img src="<?php echo $img[2] ; ?>" alt="" width="71" height="53" /><br />      
      <br /></td>
    <td height="4" bgcolor="#CCCCCC" align="center" valign="top"><img src="<?php echo $img[3] ; ?>" alt="" width="71" height="53" /></td>
  </tr>
  <tr>
    <td height="21" colspan="2" align="center" valign="top" bgcolor="#CCCCCC"><strong><a href="viewall.php">View all</a></strong></td>
  </tr>
  <tr>
    <td height="36" bgcolor="#CCCCCC" align="center"><img src="images/alosious.jpg" alt="" width="77" height="75" /></td>
    <td height="36" bgcolor="#CCCCCC" align="center"><img src="images/alvas.jpg" alt="" width="96" height="96" /></td>
  </tr>
  <tr>
    <td height="36" bgcolor="#CCCCCC" align="center"><img src="images/canara.jpg" alt="" width="78" height="78" /></td>
    <td height="36" bgcolor="#CCCCCC"><img src="images/dhavala.jpg" alt="" width="96" height="74" /></td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#CCCCCC" align="center"><strong>View all</strong></td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#CCCCCC"><strong><u>Advertisement</u></strong></td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#CCCCCC" align="center"  ><a href="http://www.admissionopen.com/" ><img src="images/advt.jpg" width="173" height="185" /></a></td>
  </tr>
  </table>


</div>
<center>
<?php include("footer.php"); ?>
  • 0
    ясно, что ваша ошибка показывает, что $_SESSION[stuid] не установлено. попробуйте сделать это как $_SESSION['stuid']
  • 1
    Даже если вы проверяете, не установлена ли сессия, session_start(); должен идти сверху. После этого вы бы установили свое состояние, а не то, как вы это делаете сейчас. Плюс, он должен быть внутри ВСЕХ ваших файлов.
Показать ещё 2 комментария
Теги:

2 ответа

0
Лучший ответ

Включите скрипт в инструкции if:

friends.php

<?php
if(!isset($_SESSION)){
    session_start();

    include("profilesql.php");
    $result = mysql_query("SELECT * FROM addfriends where meid='$_SESSION[stuid]' ");
    while($row = mysql_fetch_array($result))
    {
        $uid1[$i] = $row["friendid"];
        $i++;
    }

    $acrec1 = mysql_query("SELECT * FROM addfriends WHERE userid='$uid1[1]'");

    while($row = mysql_fetch_array($acrec2))
    {
        $img1[0]=  $row["image"];
    }

    $acrec2 = mysql_query("SELECT * FROM addfriends WHERE userid='$uid1[2]'");

    while($row = mysql_fetch_array($acrec2))
    {
        $img1[1]=  $row["image"];
    }

    $acrec3 = mysql_query("SELECT * FROM profile WHERE userid='$uid1[3]' ");

    while($row = mysql_fetch_array($acrec3))
    {
        $img1[2]=  $row["image"];
    }

    $acrec4 = mysql_query("SELECT * FROM profile WHERE userid='$uid1[4]' ");
    while($row = mysql_fetch_array($acrec4))
    {
        $img1[3]=  $row["image"];
    }
}
?>
  • 0
    тогда чего не хватает в profile.php ??
  • 0
    у вас все еще есть ошибки после попытки этого?
Показать ещё 1 комментарий
1

Это строгие ошибки - ошибки, которые не являются фатальными, но являются признаками небезопасного кода. Многие из них - для отсутствующих ключей массива, то есть ключи массива, к которым вы обращаетесь, не определены. Чтобы остановить ошибки, прежде чем обращаться к ключам массива, которые могут не существовать, вам необходимо проверить, установлены ли они. Например:

if($row["userid"] != $_SESSION["stuid"] )

становится

if(!isset($_SESSION["stuid"] || $row["userid"] != $_SESSION["stuid"])

Что касается неопределенных переменных предупреждений, вам нужно либо заранее определить переменные, либо проверить, установлены ли они при доступе к ним. Для вашего использования вы, вероятно, можете просто определить неустановленный:

$uid1 = array();

Наконец, вы пытаетесь случайно использовать неправильную переменную. Первое while($row = mysql_fetch_array($acrec2)) должно быть while($row = mysql_fetch_array($acrec1)).

Однако много кода здесь очень неэффективно. Например, вы выполняете несколько запросов для того, что можно сделать в одном. Подумайте, используя запрос WHERE... IN для получения всех "друзей", вместо того, чтобы делать один запрос для каждого пользователя.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню