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

Di halaman edit, tampilkan tombol radio yang dipilih

Sesuatu seperti ini

printf('<input type="radio" name="subscribedrips" value="Yes" %s /> Yes'."\n", 
    ($subscribedrips == 'Yes' ? 'CHECKED' : ''));
printf('<input type="radio" name="subscribedrips" value="No" %s /> No'."\n",   
    ($subscribedrips == 'No'  ? 'CHECKED' : ''));

bekerja. Ia menggunakan operator ternary untuk memasukkan 'CHECKED' atau string kosong ke dalam tag input, berdasarkan nilai $subscribedrips .

Anda juga dapat melakukannya dengan cara yang lebih bertele-tele, misalnya dengan switch:

$sel_y = '';
$sel_n = '';
switch($subscribedrips)
{
    case 'Yes':
        $sel_y = 'CHECKED';
        break;
    case 'No':
        $sel_n = 'CHECKED';
        break;
    default:
        // Neither need to be changed, so we dont even need this branch
        break;
}

printf('<input type="radio" name="subscribedrips" value="Yes" %s /> Yes'."\n", $sel_y);
printf('<input type="radio" name="subscribedrips" value="No" %s /> No'."\n",   $sel_n); 

Preferensi pribadi benar-benar.

Snippet 1 yang Diperbarui

printf('<input type="radio" name="subscribedrips" value="Yes" %s /> Yes'."\n", 
    ((array_key_exists('subscribedrips', $row) && $row['subscribedrips'] == 'Yes') ? 'CHECKED' : ''));
printf('<input type="radio" name="subscribedrips" value="No" %s /> No'."\n",   
    ((array_key_exists('subscribedrips', $row) && $row['subscribedrips'] == 'No')  ? 'CHECKED' : ''));

Snippet 2 yang Diperbarui

$sel_y = '';
$sel_n = '';
if(array_key_exists('subscribedrips', $row))
{
    switch($row['subscribedrips'])
    {
        case 'Yes':
            $sel_y = 'CHECKED';
            break;
        case 'No':
            $sel_n = 'CHECKED';
            break;
        default:
            // Neither need to be changed, so we dont even need this branch
            break;
    }
}

printf('<input type="radio" name="subscribedrips" value="Yes" %s /> Yes'."\n", $sel_y);
printf('<input type="radio" name="subscribedrips" value="No" %s /> No'."\n",   $sel_n); 

Mengenai pertanyaan terakhir Anda, perbedaan antara pendekatan kami cukup sederhana, tetapi sekali lagi (ahh!) ini adalah pilihan gaya, keduanya mencapai tujuan yang sama, kedua metode digunakan dalam kode PHP "produksi".

Contoh saya membangun seluruh tag input dalam PHP dan mencetaknya. Pendekatan Valentinas menarik teks statis dari string PHP dan memasukkannya langsung ke HTML.

Misalnya, baris berikut semuanya akan menghasilkan output yang sama:

<?php printf("<strong>%s</strong>", $some_string); ?>

<?php echo "<strong>$some_string</strong>"; ?>

<?php echo "<strong>".$some_string."</strong>"; ?>

<strong><?php echo $some_string; ?></strong>

Saya ragu ada perbedaan kinerja yang signifikan antara kedua metode tersebut, tetapi ada satu perbedaan kosmetik yang akan saya soroti.

  • Penyorotan sintaks - Jika Anda menggunakan editor dengan penyorotan sintaks, pendekatan valentinas akan memungkinkan penyorot sintaks untuk menyorot input dengan tepat tag dan atributnya. Menggunakan pendekatan saya, seluruh string akan disorot sama. Berikut adalah tangkapan layarnya menunjukkan bagaimana notepad++ menyoroti kedua metode tersebut.

    Seperti yang Anda lihat, pendekatan valentina menghasilkan tampilan yang lebih berwarna, yang dapat membantu mengidentifikasi dan melacak kesalahan.

Ada beberapa perbedaan halus dalam hal bagaimana kode Anda harus diformat jika Anda ingin mencetak seluruh tag secara kondisional, tetapi itu tidak terlalu penting untuk dibicarakan -- yang terbesar, menurut saya, adalah penyorotan sintaks.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara membuat pemicu untuk menghapus php myadmin

  2. MySQL - PHP:Menampilkan Hasil Dalam Baris Tabel (5 hasil per baris)

  3. Dasar-dasar Tuning MySQL di Dedicated Server

  4. Menghapus bagian dari string di MYSQL

  5. MySQL LIKE + php sprintf