Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为html表单提供默认值,并提供在$\u POST之前更改值的选项_Php_Html - Fatal编程技术网

Php 为html表单提供默认值,并提供在$\u POST之前更改值的选项

Php 为html表单提供默认值,并提供在$\u POST之前更改值的选项,php,html,Php,Html,我目前正在网页上创建一个html表单,我想知道是否有办法将默认值添加到文本框中,但是用户也可以删除默认文本,并在需要时输入新文本 我现在拥有的是这个 <html> <body> <form method="post"> Suspend: <input type="text" name="sus"><br /> Device Name: <input type="text" name="dev"&

我目前正在网页上创建一个html表单,我想知道是否有办法将默认值添加到文本框中,但是用户也可以删除默认文本,并在需要时输入新文本

我现在拥有的是这个

<html>
  <body>
    <form method="post">
      Suspend: <input type="text" name="sus"><br />
      Device Name: <input type="text" name="dev"><br />
      IP: <input type="text" name="ip"><br />
      Dependency: <input type="text" value="none" name="depend"><br />
      Email: <input type="email" value="abc@123.com" name="email">
      <input type="submit" value="submit" name="submit">
    </form>
    </body>
    </html>
 <?php
  if(isset($_POST['sumbit']))
 {
   $sus=$_POST['sus'];
   $dev=$_POST['dev'];
   $ip=$_POST['ip'];
   $depend=$_POST['depend'];
   $email=$_POST['email'];

    if(isset($sus) && isset($dev) && isset($ip) && isset($depend) && isset($email)
     {
       $update=mysqli_query($con, "UPDATE table SET Suspend=$sus, Device=$dev, IP=$ip,   Dependence=$depend, Email=$email WHERE id=$id");
      }
 }

暂停:
设备名称:
IP:
依赖关系:
电邮:
您可以像这样在php内部获得值

$value = $_POST['email'];
如果你在输入框中输入了一些东西,你将得到默认值的值

如果您使用的是html5,则需要使用占位符attr,请查看此处:


HTML5具有输入标记的新占位符属性,但当您在字段中键入时,该值消失。输入标记还具有value属性。

请尝试查看以下内容:

占位符是显示在输入中的默认文本。
但是,如果用户没有插入任何内容,则在提交表单时,占位符值不会包含在帖子中。
value=”“
仍将被识别。

由于占位符attr仍然是相当新的,并且旧的浏览器不支持该占位符attr,因此这里有一个后备方法,可用于提供与占位符attr相同的功能

if (!("placeholder" in document.createElement("input"))) {
    var inputs = document.querySelectorAll("input[placeholder]"),
        input,
        dateDefault;

    for (var i = 0, len = inputs.length; i < len; i++) {
         input = inputs[i];
         input.value = input.getAttribute("placeholder");

         input.addEventListener("focus", function() {
             dateDefault = this.getAttribute("placeholder");
             (this.value === dateDefault) && (this.value === "");
         }, false);
         input.addEventListener("blur", function() {
             (this.value === "") && (this.value === dateDefault);
         }, false);
    }
}
if(!(.createElement(“输入”)中的占位符){
var inputs=document.queryselectoral(“输入[占位符]”),
输入,
违约日期;
对于(变量i=0,len=inputs.length;i

如果占位符attr不可用,它将使用您为占位符attr输入的值并将其分配给值。然后使用一些js,您可以检测输入字段是否为空或仍然具有原始值,或者用户是否键入了。您可以轻松地将其应用于jQuery,或者使用addEventListener、attachEvent或任何支持所需浏览器的方法。希望这有帮助

如何将其添加到数据库中?即使该值为
abc@123.com
如果您更改了它,那么应该是posted,这是一个等待发生的SQL注入。您需要验证/清理$\u POST!我实际上需要的默认值被张贴,如果他们不改变它。。。对不起,我可能解释得不够清楚。。。出于某种原因,我编写的代码总是插入默认值,即使您对其进行了很好的更改,也可以在输入中插入一个值。例如
挂起:
或者您可能不想显示默认值?如果没有,您可以在post
if(空($\u post['sus']){$\u post['sus']==“默认值”;}