Mysql
 sql >> Base de données >  >> RDS >> Mysql

codeigniter :mettre à jour la table à partir d'une autre table avec session

changez votre vue comme suit :

<form method="post" action="<?php echo base_url() . "index.php/userinfo/update_user"?>">
        <?php if($result->num_rows() == 0){
            echo 'No user found';
        }
        else {
            foreach ( $result->result_array() as $new_user ){ ?>
                <h4>Your name:<input value=" <?php echo $new_user['balance'] ?>" type="text" name="balance" /> </h4><br />
                <h4>Your name:<input value=" <?php echo $new_user['id'] ?>" type="text" name="id" /> </h4><br/>
                <h4>Your name: <input value="<?php echo $new_user['userId'] ?>" type="hidden" name="userId"/> </h4>
                <input type="submit" id="submit" name="dsubmit" value="Update">
            <?php   }
        }
     ?>
</form>

le formulaire enverra des données au serveur uniquement si l'élément a un nom

et vous ne pouvez pas soumettre un formulaire plusieurs fois. Le code ci-dessus créera un bouton de mise à jour pour chaque ligne. Donc, si vous souhaitez mettre à jour tous les enregistrements en une seule mise à jour, utilisez update_batch() dans codeigniter. et changez de vue comme suit :

foreach ( $result->result_array() as $new_user ){ ?>
                <h4>Your name:<input value=" <?php echo $new_user['balance'] ?>" type="text" name="balance" /> </h4><br />
                <h4>Your name:<input value=" <?php echo $new_user['id'] ?>" type="text" name="id" /> </h4><br/>
                <h4>Your name: <input value="<?php echo $new_user['userId'] ?>" type="hidden" name="userId"/> </h4>

            <?php   } ?>
<input type="submit" id="submit" name="dsubmit" value="Update">

pour référence :https://www.codeigniter.com/userguide3/ base de données/query_builder.html#updating-data