在我的输入表单上选择哪些类型?

时间:2016-06-10 07:53:07

标签: php html input types

我试图建立一个用户可以将歌曲添加到我的数据库的页面。我有一些问题。当我试用它时,ID,专辑标题和Artiest被正确地添加到我的数据库中,但我只获得Duur的值和Prijs的0.00,这不是我试图添加的wat。

我的代码如下:

<form method="post">
<input type="int(5)" name="ID"> ID <br>
<input type="text" name="Titel">Titel<br>
<input type="text" name="Artiest">Artiest<br>
<input type="varchar(6)" name"Duur">Duur<br>
<input type="decimal(5,2)" name"Prijs">Prijs<br>

<input type="submit">
</form>

<?php

$inputid = $_POST['ID'];
$users_name = $_POST['Titel'];
  $users_email = $_POST['Artiest'];
  $users_website = $_POST['Duur'];
  $users_comment = $_POST['Prijs'];





  $query = "
  INSERT INTO `Album`(`ID`, `Album Titel`, `Artiest`, `Duur`, `Prijs`) VALUES ('$inputid', '$users_name',
        '$users_email', '$users_website', '$users_comment');";

  $result = $conn->query($query);;


  echo "<h2>Thank you for your Comment!</h2>";

  mysql_close($con);

?>

数据库已正确链接,因此不是问题所在。 我拥有与数据库结构完全相同的输入类型。

有人可以帮帮我吗? 提前谢谢!

2 个答案:

答案 0 :(得分:1)

所有可用输入类型的列表:http://www.w3schools.com/html/html_form_input_types.asp

   <form method="post">

    <!-- Add required attribute if you don't want user to leave it blank  -->

    ID: <input type="text" name="id" required /> <br>
    Title: <input type="text" name="title" required /><br>
    Artist<input type="text" name="artist" required /><br>

    <!-- allow user to enter float values between your choice -->
    Duration: <input type="number" min="0" max="10" step="0.01" name="duration" required /><br>


    Price: <input type="number" min="0" max="999.00" step="0.01" required name="price" /><br>

    <input type="submit">
</form>


    <?php

    $id = $_POST['id'];
    $title = $_POST['title'];
    $artist = $_POST['artist'];
    $duration = $_POST['duration'];
    $price = $_POST['price'];

    $query = "INSERT INTO `Album`(`ID`, `Album Titel`, `Artiest`, `Duur`, `Prijs`) VALUES ('$id', '$title',
            '$artist', '$duration', '$price');";

      $result = $conn->query($query);;


      echo "<h2>Thank you for your Comment!</h2>";

      mysql_close($con);

更新:您忘记在最后两个输入字段的名称中加上“ = ”,这就是为什么他们没有获得POSTED。

我已经编辑了原来的答案。

以下是我尝试过的代码的编辑版本:

<form method="post">

        <!-- Add required attribute if you don't want user to leave it blank  -->

        ID: <input type="text" name="id" required /> <br>
        Title: <input type="text" name="title" required /><br>
        Artist<input type="text" name="artist" required /><br>

        <!-- allow user to enter max 6 characters -->
        Duration: <input type="number" min="0" max="10" step="0.01" name="duration" required /><br>

        <!-- allow user to enter float values between your choice -->
        Price: <input type="number" min="0" max="999.00" step="0.01" required name="price" /><br>

        <input type="submit">
    </form>

    <?php
      print_r( $_POST );


    ?>

这给了我输出enter image description here

如果您不熟悉编程,那么请使用一些合适的变量名称,以便其他人更好地理解您的代码

希望这能解决您的问题。

答案 1 :(得分:0)

HTML只有以下输入类型http://www.w3schools.com/htmL/html_form_input_types.asp。您必须仅在数据库中而不是在HTML中维护严格的数据类型。对于HTML,请使用以上登记的输入类型之一。

<input type="number" name="ID"> ID <br>
<input type="text" name="Titel">Titel<br>
<input type="text" name="Artiest">Artiest<br>
<input type="number" name"Duur">Duur<br>
<input type="number" name"Prijs">Prijs<br>