注意:未定义的索引:在第142行的C:\ wamp \ www \ somygms \ a.php中

时间:2012-04-25 04:22:15

标签: php mysql

每当我在本地网络服务器上运行这个PHP代码时,我都会收到错误:

<?php
@ require_once ('C:\wamp\www\Connections\koneksi.php');
session_start();
if (!isset($_SESSION['id']))
{
    header("Location:index.php");
}
$sql = "SELECT * FROM pasien WHERE noreg = 1122312131";
$query = mysql_query($sql) or die(mysql_error());
$data2 = mysql_fetch_array($query);

?>

            <form id="form1" name="form1" method="post" action="#">
          <table width="804" border="0" id="inputdata" style="border-collapse:collapse">
            <tr>
              <th width="8" rowspan="3" bgcolor="#CCCCCC" scope="row">&nbsp;</th>
              <th width="104" height="50" bgcolor="#CCCCCC" scope="row"><div align="right">Kode Pasien</div></th>
              <td width="250" bgcolor="#CCCCCC"><label for="nama"></label>
                <label for="noreg"></label>
                <div align="left">
                <input name="noreg" type="text" id="noreg" size="15" maxlength="13">
                <input type="submit" name="view" id="view"  value="View">       <?php
                @ include_once ('database.php');
                $view = $_POST['view'];
                $noreg = $_POST['noreg'];
                if($view){
                    $_POST[$noreg];
                }
                ?>

这是错误:

( ! ) Notice: Undefined index: view in C:\wamp\www\somygms\a.php on line 139

( ! ) Notice: Undefined index: noreg in C:\wamp\www\somygms\a.php on line 140

感谢您的帮助,我们将不胜感激。

-admin

3 个答案:

答案 0 :(得分:1)

您正在初始化这两个变量,但数组项不存在。

$view = $_POST['view'];
$noreg = $_POST['noreg'];

清楚地显示viewnoreg不是来自POST方法。您应该检查以确认这一点。使用var_dump($_POST);查看发布的数据。

编码时,应确保所编写的代码尽可能在所有情况下执行。在您的情况下,在之前初始化变量或使用isset进行检查并再次初始化。

$view = isset($_POST['view']) ? $_POST['view'] : '';
$noreg = isset($_POST['noreg']) ? $_POST['noreg'] : '';

现在正在指出......默认情况下,页面会有 *没有POST变量* ,所以你可以过滤掉这样的情况

if(isset($_POST) && count($_POST)) {
    @ include_once ('database.php');
    $view = $_POST['view'];
    $noreg = $_POST['noreg'];
    if($view){
        $_POST[$noreg];
    }
}

答案 1 :(得分:0)

因为您访问$ _POST中不存在的密钥。请尝试以下方法:

$view = (isset($_POST['view']) ) ? $_POST['view'] : '';
$noreg = (isset($_POST['noreg']) ) ? $_POST['noreg'] : '';

答案 2 :(得分:0)

在第3行的fetch()中的非对象上调用成员函数C:\wamp\www\chat\chat_vue.php