我无法显示数据库中的数据

时间:2013-09-08 14:01:35

标签: php html

这是我的编码我是php的新手我经常使用codigneter我用来在模型中编写查询但我不知道在哪里编写查询。此代码生成错误

  

注意:未定义的偏移量:C:\ wamp \

中为0

并且无法从DB

获取数据
                  <div class="table">

             <table cellspacing="0" cellpadding="0">
            <thead>
             <tr>
                <th width="50" class="first">Id</th>
                <th width="117">Name</th>
                <th width="145">E.mail</th>
                <th width="63">Phone</th>
                <th width="145">Address</th>
                <th width="145">Payer Email</th>
                <th width="45">Amount</th>
                <th width="45" class="last">Status</th>
            </tr>
            </thead>
            <tbody class="table_body">
              <?php  
              $result = mysql_query("SELECT * FROM myorders ");
             $fields = mysql_fetch_assoc( $result );
               if(isset($fields)){
        if(count($fields)>0){
      for($j=0; $j<count($fields); $j++){ ?>
    <tr>
        <td class="first style2"><?php echo $fields[$j]->id?></td>
        <td><?php echo $fields[$j]->name?></td>
        <td><?php echo $fields[$j]->email?></td>
        <td><?php echo $fields[$j]->phone?></td>
        <td><?php echo $fields[$j]->address?></td>
        <td><?php echo $fields[$j]->payer_email?></td>
        <td><?php echo $fields[$j]->amount?></td>
        <td><?php echo $fields[$j]->status?></td>

        </tr>
    <?php } 
        }
  }
?>  
        </tbody></table>
        </div>

2 个答案:

答案 0 :(得分:1)

在您从数据库中检索数据之前,您需要连接到它,这可以通过不同的方式完成,例如我将使用mysqli new

$mysqli = new mysqli("localhost", "database username", "database user password");
mysqli_query($mysqli, "query here");

我在这个例子中使用了mysqli,因为不推荐使用mysql命令,并且将在下一版本的PHP中删除它。

答案 1 :(得分:0)

您正在使用返回关联数组的mysql_fetch_assoc()

$fields['id'] 

并且你只使用它一次而不是循环,所以它永远不会返回超过1行(Returns an associative array that corresponds to the fetched row and moves the internal data pointer ahead

$fields = mysql_fetch_assoc( $result );

但是您尝试将数组作为对象访问

$fields[$j]->id

因此您需要使用mysql_fetch_object()代替mysql_fetch_assoc()


与其他评论/答案一样,您应切换为mysqliPDO - http://php.net/manual/en/mysqlinfo.api.choosing.php