调用从for循环创建的数组元素

时间:2014-05-20 21:00:52

标签: php mysql arrays form-submit

我有一个从mysqli查询创建的数组。 然后该数组通过for循环显示一个表。 在表格中有一个表单提交,需要获取所选行并将信息传递给要修改的变量。

我试图截取屏幕截图,但我刚加入并且没有代表。理论上,用户需要能够选择Modify,并且该行的数组元素需要传递到文本输入框,其中预设值为$ row [$ j] [0],其中$ j基于所选行固定修改。

这部分代码就是这样的。

if (isset($_POST['Select']) &&
isset($_POST['Search']))
{
$Select = get_post($con,'Select');
$Search = get_post($con,'Search');
    if ($Select == "Invalid")
    {
    echo "<br /><br />Please select a search catagory";
    }
    else if ($Search == NULL)
    echo "<br /><br />Please enter search field";
    else
    {

    $query = "SELECT * FROM table WHERE $Select LIKE '$Search%'";
    $result = mysqli_query($con,$query);

    if (!mysqli_query($con,$query)) {
    die('Error: ' . mysqli_error($con));
    }

    $rows = mysqli_num_rows($result);
    echo "<table id='myTable' class='tablesorter'>
    <thead><tr>
    <th>Modify</th>
    <th>Field1</th>
    <th>Field2</th>
    <th>etc...</th>
    </tr></thead><tbody>";
    for ($j = 0 ; $j < $rows ; ++$j)
    {
        $row = mysqli_fetch_row($result);
        $modrow[$j] = $row;
        echo <<<_END
    <tr>
    <td><form action="Lookup.php" method="post"><input type="submit" value="Modify" /><input type="hidden" name="submitted" value="$modrow[$j]"</form></td>
    <td>$row[0]</td>
    <td>$row[1]</td>
    <td>etc...</td>
    </tr><br />

    _END;
    }
echo "</tbody></table>";

if (isset($_POST['submitted']))
{
echo <<<_END
<form action="Lookup.php" method="post"><pre>
Field1     <input type="text" name="Field1" size="50" **value="$modrow[$j][0]"** />
...more of the same...

1 个答案:

答案 0 :(得分:0)

根据我收集的内容,您希望将请求传递给包含该行的某种形式标识符的服务器,以便您可以创建一个表单供用户修改该行的数据。对不起,如果我误解了 - 我先问我是否正确理解你的评论,但没有足够的代表。

您可以使用ID提交到服务器。

<button type="submit" name="modify" value="<?= $theRowsId ?>">Modify</button>

将name和value属性的值分别视为函数/方法和值传递。

现在,当单击“修改”时,您可以检索ID,执行ID查询并使用行数据填充输入。

$rowId = $_POST['modify'];