php - 提交时形成 if then Else/ifElse HTML

标签 php html forms

我有一个表格,我需要以特定的方式进行操作。示例:用户带回设备:我不希望它出现在我的表单中。用户取出设备:我希望它生成到我的表单中,他们输入一些信息,表单将信息发送到数据库。用户取出设备:它也生成上述表格,他没有输入任何信息,表格在20秒后提交信息,信息在数据库中。

我正在做一个简单的页面刷新,以便将信息输入我的表格,但那是把那天带进仓库的所有设备都拉出来了。所以我将其注释掉,然后我会卡在我的 ajax 页面上。

然后我尝试创建一个新的 php 页面,该页面具有 301 页面刷新,并且可以将该页面返回到我的索引页面,但是,我的表单无法正常工作,所以我注释掉了自动提交,现在我的表格工作得很好......除了我无法满足最后一个要求,如果用户忘记输入他的设备信息,页面将提交数据。

我正在寻求执行 if/then/else 类型的页面提交。但是,我无法弄清楚如何纯粹用 php 或 html 来做一个。到目前为止,这是我想出来的,但它不起作用,我知道我离某个地方很远。

<!DOCTYPE html>
<html>
<body>

<!--This is the one that is currently commented out in my code
<script type="text/javascript">
 window.setTimeout(function() {
 window.location = 'index.php'},1000*2);
</script>
</body>
</html> -->

  //This is my pipe dream 
   <?php
   if (isset($_POST['action'])) {
        switch ($_POST['action']) {
                    case ‘DONE’:
                        document.getElement('formSubmit').submit();
                        break;
            }
              } else {
                 <script type="text/javascript">
                     window.setTimeout(function(){
                     document.getElement('formSubmit').submit();
                },1000*30);
                 </script>
           }

          ?>

除了通过 codecademy 之外,我对 jQuery 了解不多,我对 javascript 的了解更少。我是一名数据库人员,被“骗”到构建高级表单/网页。所以我在编写代码的同时学习 PHP、CSS、jQuery 和 HTML。

索引.php:

<!DOCTYPE html>
<html>
<head>
<meta name=“Warehouse 3962” content="width=device-width, initial-scale=1.0">
<link href="style.css" type="text/css" rel="stylesheet">
<script type="text/javascript">
<!—window.setTimeout(function(){
              document.getElement(‘formSubmit').submit();
              },1000*30); —>
</script>
</head>
<body>
<section class="w">
    <div class="row">
        <div class="small columns">
            <img src="logo.png" />
            <h3 class="green">Users</h3>
        </div>

        <h6>Warehouse 3962</h6>
    </div>

    <div class="row">
        <div class="small columns">
            <form action="ajax.php" method="post" id="formSubmit">
                <table id="equipment-table">
                    <thead>
                        <tr>
                            <th>Equipment</th>
                            <th>Amount</th>
                            <th>Val1</th>
                            <th>Val2</th>
                        </tr>
                    </thead>

                    <tbody>
                        <?php foreach 
                        ($results['tags'] as $equipment) {
                            if ($equipment['category'] == "Part") { ?>

                                <tr>
                            <td><?= $equipment['Amount']; ?></td>
                <td class="text-center"><?= $equipment[‘quantity']; ?></td>
                                    <td><input type="text" name="val1" /></td>
                                    <td><input type="text" name="val2" /></td>
                                </tr>

                            <?php } // end if
                        } // end foreach ?>

                        <tr>
        <td colspan="4" style="text-align: right;"><input      type="submit" class="button" name="DONE" value="DONE" /></td>
                        </tr>
                    </tbody>
                </table>
            </form>
        </div>
    </div>
</section>
</body>
</html>

最佳答案

请尝试这个新的解决方案。这将每 30 秒发送一次帖子,其中仅包含包含文本的输入框。

<!DOCTYPE html>
<html>
<head>
<meta name="Warehouse 3962" content="width=device-width, initial-scale=1.0">
<link href="style.css" type="text/css" rel="stylesheet">
</head>
<body>
  <section class="w">
    <div class="row">
      <div class="small columns">
        <img src="logo.png" />
        <h3 class="green">Users</h3>
      </div>

      <h6>Warehouse 3962</h6>
    </div>

    <div class="row">
      <div class="small columns">
        <form action="ajax.php" method="post" id="formSubmit">
          <table id="equipment-table">
            <thead>
              <tr>
                <th>Equipment</th>
                <th>Amount</th>
                <th>Val1</th>
                <th>Val2</th>
              </tr>
            </thead>
            <tbody>
              <?php
              foreach ($results['tags'] as $equipment) :
              if ($equipment['category'] === "Part") :
              ?>
              <tr>
                <td>
                  <?php echo $equipment['Amount']; ?>
                </td>
                <td class="text-center">
                  <?php echo $equipment['quantity']; ?>
                </td>
                <td>
                  <input id="<?php echo $equipment['number'];?>-val1" type="text" name="<?php echo $equipment['number'];?>-val1"/>
                </td>
                <td>
                  <input id="<?php echo $equipment['number'];?>-val2" type="text" name="<?php echo $equipment['number'];?>-val2"/>
                </td>
              </tr>
              <?php
                endif;
                endforeach;
               ?>
              <tr>
                <td colspan="4" style="text-align: right;">
                  <input type="submit" class="button" name="DONE" value="DONE" />
                </td>
              </tr>
            </tbody>
          </table>
        </form>
      </div>
    </div>
  </section>
  <script type="text/javascript">
    function sendData() {
      var inputs = document.getElementById('equipment-table').getElementsByTagName('input'),
          data = [],
          name, val1, val2;

      for (var i = 0; i < inputs.length; i++) {
        if ( inputs[i].type === 'submit') {
          continue;
        }

        if ( inputs[i].value ) {
          name = inputs[i].name.split('-val');
          val1 = inputs[i].name.split('val1');

          if (val1.length > 1) {
            data.push({name: name[0], val1: inputs[i].value});
          }
          else {
            data.push({name: name[0], val2: inputs[i].value});
          }
        }
      }

      window.setTimeout(function() {
        sendData();
      },30000);
    }

    sendData();
  </script>
</body>
</html>

关于php - 提交时形成 if then Else/ifElse HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35227100/

相关文章:

jquery - 不使用插件的 jQuery 表单验证

html表单输入保存数据

python - Web Scraping Python 访问表数据

html - 如何使用 angularJS 显示模态弹出窗口?

php - 拉拉维尔 : phpunit cannot open file ExampleTest. PHP

php - 数据库错误 - 仅在某些浏览器中

html - 为什么bootstrap简单的全宽布局会导致溢出

javascript - 使用CSS更改输入字段的文本颜色

php - 用php远程连接mysql数据库?

javascript - 为什么尝试建立网络套接字时连接被拒绝?