如何选择正确的行?

时间:2017-04-28 10:00:26

标签: php html

第1页:

<div>
<?php
        $reponse = $db->query('SELECT * FROM societe;');

?>

    <table border=1>
        <form method="post" action="ModifSociete.php">
    <?php
        $increm = 1;
        while($donne = $reponse->fetch()){
    ?>
            <input type="hidden" value="<?php echo $donne['NomSoc']; ?>" name="nomSoc<?php echo $increm; ?>"/>
            <tr>
                <td><?php echo $donne['ID']; ?></td>
                <td><?php echo 'Societe '.$donne['NomSoc']; ?></td>
                <td><?php echo $donne['Lieu']; ?></td>
                <td><?php echo $donne['Mail']; ?></td>
                <input type="hidden" value="<?php echo $donne['ID']; ?>" name="getIdSoc<?php echo $increm; ?>"/>
                <td><input class="btn" type="submit" value="Modifier"/></td>
            </tr>

    <?php
        $increm++;
        }
        $reponse->closeCursor(); 

    ?>
            <input type="hidden" value="<?php echo $increm; ?>" name="nbIncrem"/>
        </form>
    </table><br/>
</div>  

第2页:

<form method="post" action="UpdateSociete.php">
<?php
//WHERE ID = "'.$_POST['getIdSoc'.$i.''].'"
    $getNomSoc = $db->query('SELECT * FROM societe;');

    $thisSociete =array();
    $i=0;
    while($data = $getNomSoc->fetch()){

        $thisSociete[$i]["NomSoc"] = $data['NomSoc'];
        $thisSociete[$i]["Lieu"] = $data['Lieu'];
        $thisSociete[$i]["Mail"] = $data['Mail'];
        $thisSociete[$i]["ID"] = $data['ID'];
        $i++;               
    }
    $j=1;

        $thisSocieteNom = "";
        $thisSocieteLieu = "";
        $thisSocieteMail = "";
        if($_POST['nomSoc'.$j.''] == $thisSociete[$j-1]["NomSoc"]){
            var_dump($_POST['nomSoc'.$j.'']);
            var_dump($thisSociete[$j-1]["NomSoc"]);

            $thisSocieteNom = $thisSociete[$j-1]["NomSoc"];
            $thisSocieteLieu = $thisSociete[$j-1]["Lieu"];
            $thisSocieteMail = $thisSociete[$j-1]["Mail"];
?>
            <input type="hidden" value="<?php echo $thisSociete[$j-1]["ID"]; ?>" name="getIdSocBis"/>
<?php
        }
        else{
            $j++;
        }

?>
<input type="hidden" value="kangourou" name="passwordAdmin" />
<div>
    <h4>Modifier la societe <?php //get le nom de la soiete ?> :</h4>
        <table>
            <tr>
                <td><label>Nom : </label></td>
                <td><input type="text" name="ajoutNomSoc" value="<?php echo $thisSocieteNom; ?>"></input></td></tr>
            <tr>
                <td><label>Lieu : </label></td>
                <td><input type="text" name="ajoutLieu" value="<?php echo $thisSocieteLieu; ?>"></input></td>
            </tr>
            <tr>
                <td><label>Mail : </label></td>
                <td><input type="text" name="ajoutMail" value="<?php echo $thisSocieteMail; ?>"></input></td>
            </tr>
        </table>
</div>
<input type="submit" value="Enregistrer"/>

我的第2页用于从第一页更新表格中的信息。

我的问题是我不知道如何选择我想要更新的行。 使用我的代码我总是更新第一个,但我不知道我需要更改以选择我想要的行。

我想要的: 我的桌子有4栏。最后一个是提交按钮。当我点击其中一个时,我会继续我的第二页(我可以看到文本输入中的行的信息),我可以更改我的行的信息(我点击提交按钮的那一行)。 / p>

我该怎么做?

P.S。 :我尽力做到最清楚......

2 个答案:

答案 0 :(得分:0)

我不认为你需要发送邮件请求。你需要做的是:

    while($donne = $reponse->fetch()){
?>
        <input type="hidden" value="<?php echo $donne['NomSoc']; ?>" name="nomSoc<?php echo $increm; ?>"/>
        <tr>
            <td><?php echo $donne['ID']; ?></td>
            <td><?php echo 'Societe '.$donne['NomSoc']; ?></td>
            <td><?php echo $donne['Lieu']; ?></td>
            <td><?php echo $donne['Mail']; ?></td>
            <input type="hidden" value="<?php echo $donne['ID']; ?>" name="getIdSoc<?php echo $increm; ?>"/>
            <td><a href="ModifSociete.php?id=<?php echo $donne['ID']; ?>">Modifier</a> </td>
        </tr>

在第二页上,您将获得唯一ID,这将帮助您根据它选择记录

答案 1 :(得分:0)

您可以使用GET参数将ID从第1页传递到第2页。

更改

<td><input class="btn" type="submit" value="Modifier"/></td>

<td><a href="ModifSociete.php?id=<?php echo $donne['ID']; ?>">Modifier</a></td>

在第2页中,尝试通过GET参数选择您解析的项目$ _GET ['id']

$getNomSoc = $db->query('SELECT * FROM societe WHERE ID = "' . $_GET['id'] . '";');