Php 警告:第131行中的非法字符串偏移量“Ticket_no”
当数据插入到db中时,我试图重复该行。因此,我已运行foreach循环,但它给我未输出的警告,因此请任何人在此警告中帮助我Php 警告:第131行中的非法字符串偏移量“Ticket_no”,php,html,Php,Html,当数据插入到db中时,我试图重复该行。因此,我已运行foreach循环,但它给我未输出的警告,因此请任何人在此警告中帮助我 <?php foreach($ticket as $t) { ?> <tr> <td><?php echo $
<?php
foreach($ticket as $t)
{
?>
<tr>
<td><?php echo $t['Ticket_no']; ?></td>
<td><?php echo $t['name']; ?></td>
<td><?php echo $t['Roll']; ?></td>
<td><?php echo $t['branch']; ?></td>
<td><?php echo $t['hostel_id']; ?></td>
<td><?php echo $t['Indisciplinary_desc']; ?></td>
<td><?php echo $t['reporting_date']; ?></td>
<td><input id="actionyes" type="submit" value="Yes"/>
<input id="actionno"type="submit" value="No"/>
</td>
</tr>
<?php
}
?>
使用如下常规语法:
<?php
$query="SELECT i.Ticket_no,i.Roll,i.reporting_date,i.Indisciplinary_desc,r.hostel_id,s.branch,s.name FROM indisciplinary_dc_reports i,room_allocation1 r,student s WHERE i.Forward_status=0 AND i.roll=r.roll AND i.roll=s.roll AND r.end_date>NOW() AND i.Closure_status=0";
$query_run=mysql_query($query,$db);
if(mysql_num_rows($query_run)==False)
{
echo "No Pending Records.";
}
else
{
$ticket=mysql_fetch_assoc($query_run);
}
?>
这就是mysql_fetch_assoc的工作原理
返回一个关联数组,该数组对应于获取的行和
将内部数据指针向前移动。mysql\u fetch\u assoc相当于使用mysql\u assoc为
可选的第二个参数。它只返回一个关联数组
所以它有一个指针,在另一个循环中不能多次使用它
也
警告
该扩展在PHP5.5.0中被弃用,并在PHP中被删除
7.0.0. 相反,应该使用MySQLi或PDO_MySQL扩展
你能打印出$ticket;?可能是$t['id'];或小写或…mysql\u num\u rows$query\u run==0?检查您的查询是否失败$query\u run=mysql\u query$query,$db diemsql\u error;它正在运行,但如果我回显$ticket,则每行会给出7次相同的结果
while ($ticket=mysql_fetch_assoc($query_run)) {
echo $ticket['Ticket_no'];
...other fields...
}