Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana saya bisa menggunakan $_get dengan fungsi build_categories_options?

Untuk setiap kategori, Anda menampilkan dua opsi, opsi kosong dan satu dengan informasi kategori:

$category_string .= '<option value=""></option><option value="'.$category['catid'].'">'.$opt_value.'</option>';

Ini ada di dalam lingkaran Anda. Jadi setiap kali loop Anda berulang, dua pilihan akan dibuat. Satu kosong dan satu dengan kategori Anda. Saya yakin Anda hanya perlu satu opsi kosong di awal <select> . Saya pikir ini yang Anda inginkan:

// notice we are initializing $category_string with an empty option here
$category_string = '<option value=""></option>';

function build_categories_options($parent, $categories, $level) {
    global $category_string;
    if (isset($categories[$parent]) && count($categories[$parent])) {
        $level .= " - ";
        foreach ($categories[$parent] as $category) {
            $opt_value = substr($level.$category['catname'],3);

            // removed extra empty category and put it in $category_string initialization
            $category_string .= '<option value="'.$category['catid'].'">'.$opt_value.'</option>';
            build_categories_options($category['catid'], $categories, $level);
        }
        $level = substr($level, -3);
    }
    return $category_string;
}

Juga, seperti yang disebutkan @MoeTsao dalam komentar, cobalah untuk menghindari penggunaan mysql_* fungsi, karena penggunaannya tidak disarankan oleh PHP. Sebagai gantinya, gunakan mysqli_* atau PDO .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Peringatan dimunculkan dengan memasukkan unicode 4-byte ke mysql

  2. Impor data cepat ke mysql di Java

  3. Apa itu PyMySQL dan apa bedanya dengan MySQLdb? Bisakah itu mempengaruhi penyebaran Django?

  4. Program C++ berkomunikasi dengan Database MySQL

  5. Transaksi MySQL dalam transaksi