发布价值变动

时间:2013-11-26 15:22:40

标签: javascript php jquery

我有记录哪个列名是计数器。值类似于000003,000012,依此类推。但我的问题是,当我尝试发布它在表单操作url更改时收到的值,我只收到3,这是真正的值是000003.为什么?我在第二页回显了POST值。

<?php
$mysqli = new mysqli("localhost", "root", "", "app");
$result1 = $mysqli->query("
    SELECT *
    FROM app 
");
echo'<table border=1>
        <thead>
    <tr>
        <th>cc</th>
    </tr>
        </thead>';
        echo'<tbody>';
while($row = $result1->fetch_assoc()){
echo'   <tr>';
            echo "<td><a href='#' onclick='javascript:postIt(".$row['counter'].");'>".$row['counter']."</a></td> ";
        echo'</tr>';
    }
    echo "</tbody></table>";

?>
<script>
 function postIt(value){
   document.forms[0].id.value = value;
   document.forms[0].submit();
 }
</script>
<form name="blah" action="check.php" method="post">
<input type="hidden" name="id">
</form>

为什么000003只变为3,或000172变为172.帮助?

3 个答案:

答案 0 :(得分:0)

因为你正在使用整数,而不是字符串。如果要将它们保留为字符串,意味着使用前导零,将值转换为字符串类型。

答案 1 :(得分:0)

为什么这是一个问题?在接收端,您可以简单地将数字填充到您想要的位置。

计数器应该是一个整数。然后,您可以根据需要填写或不填写。

如果你真的想要,你可以在发送之前填写它。

见这里: How can I pad a value with leading zeros?

答案 2 :(得分:0)

这可能有用

echo "<td><a href='#' onclick='javascript:postIt(\"".$row['counter']."\");'>".$row['counter']."</a></td> ";