【问题标题】:Pull information from an array从数组中提取信息
【发布时间】:2013-04-27 09:14:25
【问题描述】:

所以基本上我真的不知道如何解释我需要什么,或者标题是否正确,但我需要一些帮助。我会尽我所能解释我正在努力做的事情。

这是我正在处理并参考的页面的图片 http://i40.tinypic.com/14m5euh.png.

所以基本上我需要做的是,当用户上传文件并单击upload 时,它将与job number 一起上传到database,到目前为止我已经设法让它更新进入database

但我无法在database 中获取job number,因为我的信息都在databasearray 中我试图将信息存储到session variable 中,它的循环并被替换到下一个,所以基本上最后一个job number 将存储在database 中,哪个原因是错误的?

我遇到的最后一个问题是,如何让用户从drop down box 回复到variable

我的代码:

  $con = mysqli_connect("localhost", "root", "","fixandrun") or die(mysqli_error()); 
  $data = mysqli_query($con,"SELECT * FROM bookjob") or die(mysql_error()); 

  Print "<table border cellpadding=10>"; 
  Print "<table border='2'>";

  echo "<table  border='2' cellpadding=10>
        <tr>
            <th> Job number</th>
            <th> Job details</th>
            <th> Pc number </th>

            <th> Job status</th>
            <th> Upload report</th>
            <th> Update Job</th>

        </tr>";

        while($row= mysqli_fetch_array($data))
        {
        echo "<tr>";
            echo "<td>".$_SESSION['JOBNUM'] = $row['jobnumber'] . "</td>";
            echo "<TD width=20% height=100>" . $row['jobdetails'] . "</td>";
            echo "<td>" . $row['pcnumber'] . "</td>";
            echo "<td> <select name='jobprogress'>
                    <option Value='pending'>pending</option>
                    <option value='Completed'>Completed</option>
                    <option value='In progress'>In progress</option>
                    <option value='Need more information'>Need more information</option>

                </select>  </td>";
            echo "<td>  <form action='reportupload.php' method='post' enctype='multipart/form-data' name='uploadform'>
                    <input type='hidden' name='MAX_FILE_SIZE' value='350000'>
                    <input name='report' type='file' id='reportupload' size='50'>
                    <input name='upload' type='submit' id='upload' value='Upload'>
                </form>
            </td>";
            echo "<td> <a href='updateadmin.php'>Update information</a></td>";
            echo "</tr>";
        }
        echo "</table>";
    echo "<br>";

【问题讨论】:

    标签: php javascript sql css arrays


    【解决方案1】:

    您的代码有很多问题。浏览所有内容将非常耗时,因此我将列出您需要查看的一些内容。

    首先,您可以根据需要制作任意数量的表单,并且在 PHP 的帮助下,您可以动态地执行此操作。问题在于每项工作,您都在创建一个具有相同名称的新表单。如果你打算这样做,你需要找到一种方法让它们成为每个表单的动态名称。

    其次,你可能不应该创建一个新的表单,所以把你所有的开始和结束标签都放在循环之外,把开始的表单标签放在while之前,把结束的form标签放在while循环之后。

    我建议您多阅读一些有关 HTML 表单和 PHP while 循环以及从带有嵌入式表单的数据库中获取信息的信息,然后再进一步了解这些内容。没有冒犯,但我认为在摆弄它之前你需要更多的知识。

    我建议制作一个可能包含 3 个字段的测试数据库和表,然后制作一个包含几个字段的小表单,看看您是否可以获取数据并先使用您的表单进行更新。

    【讨论】:

    • 是的,我意识到我不是很有经验,它对于我的大学课程不是实际用途。我想过你所说的,是否可以创建一个带有变量名的表单?例如
      并在每次循环时将可用增量增加 1,以便每次都创建一个新表单?
    • 绝对 - 你在正确的轨道上。我也没有冒犯的意思。所以你可以有一个增量变量,你在 while 循环之前初始化为 $cnt = 0;,然后在 while 循环的底部放一个 ++$cnt; ....然后通过您的表单名称,您可以根据需要使用 uploadForm-$cnt。更好的解决方案是使用数据库自​​动增量中的主键,或者使用 jobID 而不是 $cnt
    【解决方案2】:

    我想我已经完成了你所说的,现在是这样吗?

            $cnt = 0;
                    while($row= mysqli_fetch_array($data))
                      {
                    echo " <form action='test.php' method='post' enctype='multipart/form-data' name='uploadform' . $cnt>";
    
                          echo "<tr>";
                          echo "<td>".$_SESSION['JOBNUM'. $cnt] = $row['jobnumber'] . "</td>";
                          echo "<TD width=20% height=100>" . $row['jobdetails'] . "</td>";
                          echo "<td>" . $row['pcnumber'] . "</td>";
                          echo "<td> <select name='jobprogress'>
                              <option Value='pending'>pending</option>
                              <option value='Completed'>Completed</option>
                              <option value='In progress'>In progress</option>
                              <option value='Need more information'>Need more information</option>
    
                              </select>  </td>";
                          echo "<td> 
        <input type='hidden' name='MAX_FILE_SIZE' value='350000'>
        <input name='report' type='file' id='reportupload' size='50'>
    
    
                                        </td>";
                          echo "<td><input name='upload' type='submit' id='upload' value='Upload'></td>";
                          echo "</tr>";
    
                          echo "</form>";
                          ++$cnt;
                      }
                    echo "</table>";
                    echo "<br>";
    
    
                        ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-06
      相关资源
      最近更新 更多