Mengapakah nilai kotak drop-down yang dipilih tidak dipaparkan?
P粉090087228
P粉090087228 2023-09-12 13:22:26
0
1
689

Saya sedang membina fungsi untuk pemalam WordPress saya yang akan memaparkan senarai lungsur turun semua halaman yang tersedia. Apabila saya mengklik "Simpan Perubahan" nilai disimpan dalam pangkalan data dengan sempurna. Ia juga mengemas kini nilai dengan sempurna. Walau bagaimanapun, nilai yang dipilih tidak dipaparkan dalam senarai juntai bawah. Apabila "Simpan Perubahan" diklik, nilai disimpan, tetapi lungsur turun ditetapkan semula kepada "Pilih Satu" sekali lagi. Ia tidak boleh memaparkan pilihan yang dipilih. Adakah saya melakukan sesuatu yang salah di sini? Sebarang bimbingan amatlah dihargai.

<form method=post>
<div class="header-right">
  <?php
  $posts = get_pages(
    array(
        'post_status' => 'publish',
    )
  );
  
  ?>
  <select name="page_for_logged_in" id="page_for_logged_in">
    <option selected="selected">选择一个</option>
    <?php
    foreach ( $posts as $page ) {
        ?>
        <option value="<?php echo esc_attr( $page->post_name ); ?>" <?php selected(get_option('page_for_logged_in'), 'page')?>><?php echo esc_html( $page->post_title ); ?></option>
        <?php
    }
    ?>
  </select>

  <?php
  if(empty($_POST['page_for_logged_in'])) {
      
    } else {
      $myvalue=$_POST['page_for_logged_in'];
      update_option('page_for_logged_in', $myvalue, $autoload = 'no');
    }
    ?>

<?php submit_button(); ?>

</p>
</br>
</br>
</form>

P粉090087228
P粉090087228

membalas semua(1)
P粉197639753

Ok, jadi saya jumpa penyelesaian untuk masalah saya. Di bawah ialah kod yang ditampal itu mungkin berguna kepada seseorang.

<form method=post>
    <div class="header-right">
      <?php
      $posts = get_pages(
        array(
            'post_status' => 'publish',
        )
      );
      
      ?>
      <?php
      if(empty($_POST['page_for_logged_in'])) {
          
        } else {
          $myvalue=$_POST['page_for_logged_in'];
          update_option('page_for_logged_in', $myvalue, $autoload = 'yes');
        }
        ?>
      <select name="page_for_logged_in" id="page_for_logged_in">
        <option value="" disabled selected>选择一个</option>
        <?php
        foreach ( $posts as $page ) {
            ?>
        <option value="<?php echo esc_attr( $page->post_title ); ?>" <?php echo ( get_option('page_for_logged_in') == $page->post_title ? 'selected' : '' ); ?>><?php echo esc_html( $page->post_title ); ?></option>
            <?php
        }
        ?>
      </select>

    <?php submit_button(); ?>

    </p>
    </br>
    </br>
    </form>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!