注意:未定义变量:nomor在C:xampphtdocs est abel.php第19行


PHP Notice: Undefined variable: nomor in C:xampphtdocs est abel.php on line 19

我刚刚学习PHP,我刚在我的第一课中发现了一个错误,我有几个小时的时间去尝试,但不知道解决方案。

<td><?php echo $nomor=$nomor+1; ?></td>

我的PHP代码:
<?php
include "koneksi.php";
$query=mysql_query("select * from biodata");
$jumlah=mysql_num_rows($query);
echo "Jumlah data ada : ".$jumlah;
?>
<table border="1">
<tr>
<th>Nomor</th><th>Nama</th><th>Alamat</th><th>Usia</th><th>Aksi</th>
</tr>
<?php
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><?php echo $nomor=$nomor+1; ?></td>
 <td><?php echo $row['nama']; ?></td> 
<td><?php echo $row['alamat']; ?></td>
<td><?php echo $row['usia']; ?></td>
<td>
<a href="delete.php?id=<?php echo $row['id']; ?>" onclick="return confirm('Apakah anda yakin?')">Delete</a>
<a href="update.php?id=<?php echo $row['id']; ?>">Update</a>
</td>
<?php
}
?>
</table><br /> 
<a href="form.php">Input data form</a>

谢谢之前

你还没有初始化$nomor变量所以php解释器在第一次读取$nomor时不知道它是什么

这样修改你的代码

<?php
  $nomor=0;
  while($row=mysql_fetch_array($query)){
?>
$nomor = $nomor + 1;
         ^^^^^^--- this is the EXACT spot of the error

您正在尝试增加一个尚未定义的变量。PHP必须在$nomor +1之前READ $nomor中的值,但是$nomor没有被定义,所以它不存在,导致警告。如果你有:

$nomor = 0;
$nomor = $nomor + 1;

就不会有问题了。

可以安全地忽略该通知,但它的意思是从未初始化$nomar。在php中,初始化是通过赋值完成的。要想让通知消失只要做$nomar = 0;该通知来自于赋值命令右侧的引用,在初始化变量时,它使用了当时未初始化的变量,因此有通知。

欢迎来到PHP世界。

在第一次在进程中使用变量之前,应该先定义它。

它不会导致错误,而是一个通知。

使用$nomor = $nomor + 1

必须定义$nomor = 0;首先跳出while循环。

好运