<form action="posts-ayarlar.php" method="POST" id="demo-form2" data-parsley-validate class="form-horizontal form-label-left"> <table class="table table-striped table-bordered" > <tr> <thead> <th scope="col">ID</th> <th scope="col">BLOG TITLE</th> <th scope="col">ED?T</th> </thead> </tr> <?php foreach($personellist as $person){ $xasr=$person->id; ?> <tr> <tbody> <td><?= $person->id ?> </td> <td><?= $person->title ?></td> <td><button type="submit" name="post_ayar_guncelle_<?php echo $xasr ?>" class="btn btn-primary">Güncelle</button> </td> <input type="hidden" name="giden" value="<?= $person->id ?>"/> </tbody> </tr> <?php } ?> </table> </form>在流程頁面,您可以在左上角看到8,它是來自主編輯表頁面的值。<?php include 'connectionconfig.php'; $gelen=$_POST["giden"]; $sorgu=$db->prepare('SELECT * FROM posts where id:id'); $sorgu->execute(array('id'=>$gelen)); $personellist=$sorgu-> fetchAll(PDO::FETCH_OBJ);?> //example edit section <div class="form-group"> <label class="control-label col-md-3 col-sm-3 col-xs-12" for="first-name">Blog Title <span class="required">*</span> </label> <div class="col-md-6 col-sm-6 col-xs-12"> <input type="text" name="title" id="first-name" required="required" class="form-control col-md-7 col-xs-12" value="<?php echo $personellist['title']; ?>"> </div> </div>這個想法是, 當我單擊這些按鈕之一時,我想使用該按鈕 id 轉到 process.php,然后我可以回調 id 所在的數據,因此網頁將顯示具有按鈕 id 的編輯博客頁面。但是當我單擊其中的任何按鈕時,由于 foreach 循環,值返回 8。順便一提; 我已經使用過ajax,但不知道為什么它不起作用。
1 回答

FFIVE
TA貢獻1797條經驗 獲得超6個贊
您的按鈕沒有值,但隱藏的輸入有。
所有隱藏輸入的值都將被提交,但由于名稱不只以[]
一個結尾,因此 PHP 不會丟棄該值。
擺脫隱藏的輸入
將值存儲在按鈕上
只有點擊提交按鈕才會成功并提交其數據。
<td>
? <button?
? ? class="btn btn-primary"
? ? name="giden"
? ? value="<?= htmlspecialchars($person->id) ?>"/>
? >
? ? Güncelle
? </button>
</td>
您還應該對生成的 HTML使用驗證器,因為存在許多錯誤。
元素tbody
不能進入tr
元素內部(無論如何它都沒有意義,重點tbody
是將一組元素分組tr
?。?。
input
元素不能是tr
或tbody
元素的子元素。如果它們出現在表格內,則必須位于該表格的單元格內。它們是否隱藏并不重要。
- 1 回答
- 0 關注
- 97 瀏覽
添加回答
舉報
0/150
提交
取消