Ketika Anda menggunakan sesuatu seperti phpMyAdmin untuk bekerja dengan data dalam database, selalu tidak nyaman bahwa bidang tertaut hanya menampilkan angka dari tabel lain, alih-alih data spesifik yang tersembunyi di sana.
Misalnya, bidang `country_id` berisi angka, bukan nama negara. Kita harus melompat dari meja ke meja. Atau tulis sql terpisah, yang sering kali merepotkan jika perlu untuk yang cepat. Atau panggil kueri sql dari telepon dari tangan Anda. Dan jika Anda perlu memperbarui negara dari bidang `country_id`, maka sekali lagi lompat dari tabel ke tabel. Singkatnya - semua ini merepotkan.
Lebih mudah ditampilkan dalam format:
Apakah
Telah menjadi
Tantangan
Buat pengaturan sederhana untuk bidang dasar untuk menampilkan data terkait dari tabel lain. Dan agar mereka dapat diperbarui di sana.
Solusi
Tugas ini menyiksaku sejak lama, oleh sifat bisnis pengembangan web saya. Ada beberapa pendekatan untuk shell, sebagai hasilnya saya memutuskan solusi paling sederhana yang bisa saya buat. Dan yang paling penting, yang ingin saya gunakan sendiri, dan tidak memecahkan masalah abstrak pengguna abstrak.
Hasilnya adalah situs
DataIncrement.comCara Kerja DataIncrement
- Kami menghubungkan basis data kami ke DataIncrement menggunakan host , nama , pass , dbname (kata sandi disimpan dalam cookie browser atau dalam sesi, mis. Tidak disimpan di situs, jika itu). Anda harus memiliki pengguna dengan kemampuan untuk terhubung dari host mana pun.
- Pendaftaran semua tindakan terjadi melalui konfirmasi melalui surat. Mungkin ini adalah keputusan yang kontroversial, tetapi sejauh ini. Karena itu, kami membuka surat dan mengklik tautan dari surat itu. Jadi, kami mengkonfirmasi koneksi.
- Setelah itu, Anda bisa masuk ke daftar database yang terhubung, di halaman utama dataincrement.com
- Kemudian kita klik pada database yang terhubung - ini akan menjadi halaman dengan daftar semua tabel yang tersedia.
- Selanjutnya, buka tab "Tautan" (tautan kedua dari nama basis data "Basis Contoh" pada gambar "Itu Dulu-Mulai"), di mana Anda harus mengonfigurasi koneksi antara tabel untuk menampilkan data terkait. Dengan menulis teks tidak licik, misalnya:
@link city country_id = country.country_id name region_id = region.region_id name
Dimana:
- pada baris pertama:
@link
adalah penunjukan bagian, dan city
adalah nama tabel - lebih jauh tentu dari baris baru dan pastikan untuk indentasi di sebelah kiri
- uraian bidang tabel kota dimulai yang tampilan akan dikonfigurasikan, mis.
country_id = country.country_id adalah bidang `city`.`country_id` = ` country`.`country_id` - lebih jauh tentu dari baris baru dan lekukan yang lebih dalam
- nama bidang untuk tampilan tambahan, mis. `country`.`name`
Dengan demikian, kita mendapatkan tampilan tabel dari gambar "Sekarang", di mana selain nilai riil bidang tersebut, nilai bidang
`negara`.`nama` ditampilkan melalui tanda titik koma. Dengan cara yang sama, pengaturan dibuat untuk bidang lain
`region_id` , yang terhubung seperti yang terlihat dari pengaturan dengan
bidang` region`.`region_id` .

Editing
Pengeditan data dilakukan dengan mengklik dua kali dalam sel tabel. Kemudian di bagian bawah halaman muncul spesial. panel di mana Anda dapat mengubah nilai dan mengirim data ke perubahan.
Selain mengedit bidang sederhana, di masa depan saya berencana untuk mencari bidang terkait. Misalnya, untuk mengubah negara, Anda dapat mengetik bagian nama dan id yang diinginkan sendiri ditawarkan untuk diisi. Sebenarnya ini adalah fitur standar dari petunjuk saat mengetik permintaan pencarian.
Sintaks yang sama akan digunakan untuk mengonfigurasi kueri pencarian, seperti untuk bagian
@link
, hanya dengan
@search
@search city country_id = country.country_id 10 name $*
dimana perbedaannya adalah:
- pembatasan baris yang dikembalikan ditunjukkan, melalui ruang - ini adalah nomor 10
country_id = country.country_id 10
- Selanjutnya, bidang untuk ditampilkan ditunjukkan, tetapi setelah spasi, pola pencarian tambahan ditunjukkan, di mana dolar $ adalah nilai yang dimasukkan, dan tanda bintang * - berarti karakter apa pun.
Sekarang saya memiliki $ * yang ditunjukkan untuk bidang `negara`.`nama`, yaitu, pencarian berdasarkan nama akan bekerja dengan huruf awal kata-kata di bidang yang ditentukan.
Templat dapat memiliki empat opsi: $ , * $ , $ * , * $ *
Kesimpulan
Saat ini, situs tersebut merupakan prototipe yang berfungsi, dan dapat ditampilkan tanpa rasa malu. Apa yang sebenarnya memunculkan catatan ini.
Ada banyak ide dan rencana, tetapi sementara proyek ini berjalan sebagai hobi, kritik diterima sebagai bahan pemikiran. Setidaknya agar saya berhenti melakukan omong kosong ini dan mulai melakukan omong kosong lainnya.
Catatan ini ditulis sebagai upaya untuk tidak mengacaukan halaman utama DI dengan segala macam "halaman pendaratan" dengan deskripsi, tidak jelas apa, tetapi sehingga Anda dapat memberikan tautan ke deskripsi dan prinsip operasi. Selain itu, segera dengan kritik independen, dari seri - "mereka bilang begitu."