【问题标题】:PHP undefined index error distorts page [duplicate]PHP未定义索引错误扭曲页面[重复]
【发布时间】:2015-10-12 09:33:14
【问题描述】:

不断收到错误,如屏幕截图所示。我已经尝试过故障排除仍然留在迷宫中。

<?php 
include 'database.php';
session_start();
$pdo = Database::connect();
$test = $_SESSION['username'];
$sql = "SELECT companyname,companyaddress,country,companystate,email,mobile,companytype FROM company WHERE username= '" . mysql_real_escape_string($test) . "'";
foreach ($pdo->query($sql) as $row) {
echo '<tr>';
echo '<td>'. $row['companyaddress'] . '</td>';
echo '<td>'. $row['country'] . '</td>';
echo '<td>'. $row['companystate'] . '</td>';
echo '<td>'. $row['email'] . '</td>';
echo '<td>'. $row['mobile'] . '</td>';
echo '<td>'. $row['companytype'] . '</td>';
echo '<td width=250>';
echo '<a class="btn" href="read.php?username='.$row['username'].'">View Details</a>';
echo '&nbsp;';
echo '<a class="btn btn-success" href="update.php?username='.$row['username'].'">Update</a>';
echo '&nbsp;';
echo '<a class="btn btn-danger" href="delete.php?username='.$row['username'].'">Delete</a>';
echo '</td>';
echo '</tr>';
}
Database::disconnect();
?>

This is the error I keep getting.

【问题讨论】:

  • 请实际提供错误(而不是屏幕截图的链接),以便将来的用户可以从任何答案中受益
  • 你能在使用前设置$_SESSION['username']的值吗
  • 查看您的查询,然后查看:$row['username']
  • 您没有在查询中询问用户名,因此未设置 $row['username'] 因此未定义

标签: php mysql database html select


【解决方案1】:

使用前$_SESSION['username']请设置他的值

<?php 
session_start();
$_SESSION['username']=1;//Set value of session before use
include 'database.php';
$pdo = Database::connect();
$test = $_SESSION['username'];
$sql = "SELECT companyname,companyaddress,country,companystate,email,mobile,companytype FROM company WHERE username= '" . mysql_real_escape_string($test) . "'";
        foreach ($pdo->query($sql) as $row) {
        echo '<tr>';
        echo '<td>'. $row['companyname'] . '</td>';
        echo '<td>'. $row['companyaddress'] . '</td>';
        echo '<td>'. $row['country'] . '</td>';
        echo '<td>'. $row['companystate'] . '</td>';
        echo '<td>'. $row['email'] . '</td>';
        echo '<td>'. $row['mobile'] . '</td>';
        echo '<td>'. $row['companytype'] . '</td>';
        echo '<td width=250>';
        echo '<a class="btn" href="read.php?username='.$row['username'].'">View Details</a>';
        echo '&nbsp;';
        echo '<a class="btn btn-success" href="update.php?username='.$row['username'].'">Update</a>';
        echo '&nbsp;';
        echo '<a class="btn btn-danger" href="delete.php?username='.$row['username'].'">Delete</a>';
        echo '</td>';
        echo '</tr>';
        }
        Database::disconnect();
        ?>

【讨论】:

  • 谢谢。它是一个使用会话的全局变量。该值已在我声明会话变量的页面上设置,我只是将其作为查询的一部分传递。您可以替换任何其他东西或它,因为它只是一个字符串。
猜你喜欢
  • 2018-04-14
  • 1970-01-01
  • 1970-01-01
  • 2012-11-14
  • 2018-09-11
  • 1970-01-01
  • 1970-01-01
  • 2013-12-27
相关资源
最近更新 更多