从表单传递值以更改文件PHP,无需POST

时间:2019-04-17 08:56:44

标签: php html html5

我正在尝试使用表单将数据库中的值传递给ALTER。 由于POST动作,我将n_processo(主键)放在表单上,​​以便POST可以将其传递到文件并编辑表。 我不希望此值显示在表(窗体)上,因为它是只读的,因此POST可以查看它并编辑值。 有谁知道该如何改变?

表格文件:

<form action="alterar_aluno3.php" method="POST">
<table>
<tr>
    <th width="15%">Nº de Aluno</th>
    <td><input type="text" maxlength="5" class="input-field4" name="teste" readonly value="<?php echo $idaluno;?>"/></td>
  </tr>
<tr>
    <th width="20%">Pessoas com quem vive:</td>
    <td><input type="text" class="input-field4" name="agregado_existente" value="<?php echo $agregado_existente;?>"/></td>
  </tr>
</table>
<p align=right>
<!--alterar este botao -->
<button type="submit" value="Alterar">Alterar</button>
<button type="cancel" onclick="window.location='http://donutsrool.pt/ficha_aluno.php';return false;">Cancelar</button>
</p>
</form>

插入文件

<?php
    include "functions.php";

    session_start();

    //captar os dados recebidos do formulário com o método POST
    $idaluno1=$_POST['teste'];
    $agregado_existente = $_POST['agregado_existente'];

    $altera="UPDATE aluno SET `agregado_existente`='$agregado_existente' WHERE `n_processo`=$idaluno1;";

    $resultado =DBExecute($altera);

    header("Location: ficha_aluno.php");
?>

2 个答案:

答案 0 :(得分:0)

尝试一下:

<?php
    include "functions.php";

    session_start();

    //captar os dados recebidos do formulário com o método POST
    $idaluno1=$_POST['teste'];
    $agregado_existente = $_POST['agregado_existente'];

    $altera="UPDATE aluno SET `agregado_existente`='$agregado_existente' WHERE `n_processo`='$idaluno1'";

    $resultado =DBExecute($altera);

    header("Location: ficha_aluno.php");
?>

答案 1 :(得分:0)

您可以将id放在hidden字段而不是文本字段中。

<input type="hidden" maxlength="5" class="input-field4" name="teste" value="<?php echo $idaluno;?>"/>

隐藏字段与文本字段的作用相同。

只能在页面加载时通过PHP或通过JavaScript事件设置其值。

唯一的区别是它们在浏览器中不可见。

但是,它们可以在页面的查看源中看到。