如何使用PHPMyAdmin在PHP中添加多个注释框?

时间:2013-12-12 20:49:35

标签: php mysql sql html5 phpmyadmin

我正在使用PHPMyAdmin构建一个像注释框一样的表。我使用的文件是PHP脚本,我使用PHPMyAdmin为反馈/评论表单设置了'id','name'和'comment'值。当我输入名称和评论时,我很高兴看到它有效。之后,它出现在底部。然后,当我尝试添加第二个注释时,它不会存储在页面或数据库表的任何位置。它只保留我放入的第一条评论,第二条评论无处可寻。我假设它与行的限制有关,但我查看了PHPMyAdmin并看到了LIMIT 0,30,这意味着它可能需要30条评论。我在这里缺少什么?

IMG of my commenttable IMG of commenttable attributes

'commenttable'的PHPMyAdmin设置:

 SELECT *
 FROM `commenttable`
 LIMIT 0 , 30!

PHP代码:

           <section>
                <h1 id="theme"><span class="initial">F</span>eedback</h1>
                <div id="message">
                <!--Place content here-->
                <?php
                mysql_connect("localhost","username","password");
                mysql_select_db("database");
                $name=$_POST['name'];
                $comment=$_POST['comment'];
                $submit=$_POST['submit'];

                $dbLink = mysql_connect("localhost", "username", "password");
                    mysql_query("SET character_set_client=utf8", $dbLink);
                    mysql_query("SET character_set_connection=utf8", $dbLink);

                if($submit)
                {
                    if($name&&$comment)
                    {
                        $insert=mysql_query("INSERT INTO commenttable (name,comment) VALUES ('$name','$comment') ");
                    }
                    else
                    {
                        echo "please fill out all fields";
                    }
                }
                ?>

                <div id="feedback_form">
                    <form action="feedbacktest.php" method="POST">
                        <table>
                        <tr><td>Name: <input type="text" name="name"/></td></tr>
                        <tr><td colspan="2">Comment: </td></tr>
                        <tr><td colspan="5"><textarea name="comment" rows="6" cols="30"></textarea></td></tr>
                        <tr><td colspan="2"><input type="submit" name="submit" value="Comment" style="cursor:pointer;"></td></tr>
                        </table>
                    </form>
                </div>

                <?php
                $dbLink = mysql_connect("localhost", "username", "password");
                    mysql_query("SET character_set_results=utf8", $dbLink);
                    mb_language('uni');
                    mb_internal_encoding('UTF-8');

                $getquery=mysql_query("SELECT * FROM commenttable ORDER BY id DESC");
                while($rows=mysql_fetch_assoc($getquery))
                {
                    $id=$rows['id'];
                    $name=$rows['name'];
                    $comment=$rows['comment'];
                    echo $name . '<br/>' . '<br/>' . $comment . '<br/>' . '<br/>' . '<hr size="1"/>';
                }
                ?>
            </div>
        </section> 

1 个答案:

答案 0 :(得分:2)

您需要将属性auto_increment添加到字段id。否则,所有条目都将获得相同的标识符,并且您的脚本将不会在使用

时从数据库中检索它
$getquery=mysql_query("SELECT * FROM commenttable ORDER BY id DESC");

结帐

$getquery=mysql_query("SELECT * FROM commenttable");

您的新条目是否会显示?

关于LIMIT 0 , 30

的问题

此部分查询仅用于将返回的行数限制为30.这与数据库可存储的条目数无关。有关详细信息,请参阅http://dev.mysql.com/doc/refman/5.0/en/select.html