<?
include('config.php');
$z=$_GET['qnum'];
$j=$_GET['num'];
$n=$_GET['num'];
$sql=mysql_query("SELECT * FROM qustion where qnum='$z'");
while($l=mysql_fetch_array($sql))
{
$m++;
}
$sql=mysql_query("DELETE FROM qustion WHERE qnum='$z' and num='$n'");
if($n!=$m)
{
$sql=mysql_query("SELECT * FROM qustion where qnum= '$z' order by num");
while($r=mysql_fetch_array($sql))
{
$x++;
if($x<=9)
{
$x="0$x";
}
$sql= "UPDATE qustion SET num='$x' WHERE qnum='$z'";
if( !mysql_query($sql,$link) )
die( 'Error: ' . mysql_error() );
}
}
?>
我的数据库更新,但我的所有num列都更新为01.i希望它是序列01,02 ....取决于我数据库中的行数。
答案 0 :(得分:2)
为什么不适当地定义数据库列,而不是在PHP中进行零填充?
ALTER TABLE `qustion` MODIFY `num` TINYINT(2) UNSIGNED ZEROFILL
或者,更好的是,在出路时格式而不是在路上:
$q = /* some code to get the question data */
echo sprintf("%02s",$q['num']);