-1

我正在开发一个简单的 PHP 应用程序。如果我尝试运行它总是显示未定义的变量.. 我需要一些关于如何解决这个问题的建议,请在下面找到代码片段,

<?php
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"];
  }
  ?>

根据上面的代码片段,我收到如下所述的错误消息,

注意:未定义变量:第 11 行 C:\xampp\htdocs\collegenetwrking\friends.php 中的 uid1

注意:未定义变量:第 13 行 C:\xampp\htdocs\collegenetwrking\friends.php 中的 acrec2

警告:mysql_fetch_array() 期望参数 1 是资源,在第 13 行的 C:\xampp\htdocs\collegenetwrking\friends.php 中给出 null

注意:未定义变量:第 18 行 C:\xampp\htdocs\collegenetwrking\friends.php 中的 uid1

警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在第 20 行的 C:\xampp\htdocs\collegenetwrking\friends.php 中给出

注意:未定义变量:第 25 行 C:\xampp\htdocs\collegenetwrking\friends.php 中的 uid1

注意:未定义变量:第 32 行 C:\xampp\htdocs\collegenetwrking\friends.php 中的 uid1

请就此向我提出建议。

4

2 回答 2

0

Define the $uid1 variable at the starting:

session_start();
$uid1 = array();
$i = 0;

As this variable is not find so it it global by defining it at the top.

This issue is occurs due to scope of variable. The scope of variable is within the while loop only so define it at the top to make it accessible within all conditions.

于 2013-09-19T11:50:31.650 回答
0

请在上面定义所有变量,然后您将不会收到此错误:
例如:

var $a = "";
var $b = "";
$array_name = array();

请养成在使用/赋值之前定义所有变量的习惯。

于 2013-09-19T11:52:21.127 回答