Pada kesempatan kali ini saya akan menjelaskan cara menggunakan tabel prefix mysql di PHP. Perlu teman-teman ketahui sebelumnya tabel prefix adalah inisial awalan nama tabel database yang ditujukan untuk mengamankan database teman-teman dari serangan injeksi SQL.Mungkin teman-teman sudash sering melakukan instalasi CMS seperti Magento, WordPress, dll, dimana pada saat teman-teman melakukan instalasi CMS tersebut maka akan ada pilihan untuk menentukan nama untuk awalan tabel MySQL yang akan digunakan dengan database MySQL aplikasi teman-teman. Awalan ini akan ditambahkan ke semua tabel dalam database aplikasi secara automatis. Menambahkan awalan semacam itu dapat meningkatkan keamanan aplikasi teman-teman karena ini adalah metode atau cara melakukan perlindungan terhadap serangan seperti injeksi SQL yang dilakukan oleh hacker.
Namun sangat disayangkan sekali, di dalam aplikasi phpmyadmin mysql belum tersedianya fasilitas untuk membuat tabel prefix secara otomatis, akan tetapi jika teman-teman mau membuatnya cukup mudah, yaitu cukup membuat tabel secara manual dengan inisial nama awalan tabel yang sama, seperti contoh nya saya memiliki tiga buah tabel database dengan nama tabel produk, kategori_produk, orders, dari ketiga tabel tersebut saya rubah namanya masing-masing menjadi br4m_produk, br4m_kategori_produk, br4m_orders. Dan seperti yang terlihat pada perubahan nama masing-masing tabel yang saya lakukan dimana pada inisial nama br4m_ adalah nama prefix tabelnya, dan dari nama tersebut saya gunakan untuk memanipulasi hacker dalam melakukan serangan injeksi SQL.
Tidak hanya itu, teman-teman juga bisa memanfaatkan prefix tabel tersebut di file koneksi database yang menghubungkan website teman-teman untuk menyamarkan tabel database teman-teman dari serangan injeksi SQL, terlihat seperti contoh pada file config.php yang terdapat di WordPress.
seperti berikut :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
<?php /** * The base configuration for WordPress * * The wp-config.php creation script uses this file during the * installation. You don't have to use the web site, you can * copy this file to "wp-config.php" and fill in the values. * * This file contains the following configurations: * * * MySQL settings * * Secret keys * * Database table prefix * * ABSPATH * * @link https://codex.wordpress.org/Editing_wp-config.php * * @package WordPress */ // ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'database_name_here'); /** MySQL database username */ define('DB_USER', 'username_here'); /** MySQL database password */ define('DB_PASSWORD', 'password_here'); /** MySQL hostname */ define('DB_HOST', 'localhost'); /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8'); /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', ''); /**#@+ * Authentication Unique Keys and Salts. * * Change these to different unique phrases! * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. * * @since 2.6.0 */ define('AUTH_KEY', 'put your unique phrase here'); define('SECURE_AUTH_KEY', 'put your unique phrase here'); define('LOGGED_IN_KEY', 'put your unique phrase here'); define('NONCE_KEY', 'put your unique phrase here'); define('AUTH_SALT', 'put your unique phrase here'); define('SECURE_AUTH_SALT', 'put your unique phrase here'); define('LOGGED_IN_SALT', 'put your unique phrase here'); define('NONCE_SALT', 'put your unique phrase here'); /**#@-*/ /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_'; /** * For developers: WordPress debugging mode. * * Change this to true to enable the display of notices during development. * It is strongly recommended that plugin and theme developers use WP_DEBUG * in their development environments. * * For information on other constants that can be used for debugging, * visit the Codex. * * @link https://codex.wordpress.org/Debugging_in_WordPress */ define('WP_DEBUG', false); /* That's all, stop editing! Happy blogging. */ /** Absolute path to the WordPress directory. */ if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); /** Sets up WordPress vars and included files. */ require_once(ABSPATH . 'wp-settings.php'); |
Seperti yang terlihat pada kode ($table_prefix = ‘wp_’;) di atas, pada variabel tersebut dimana dapat digunakan pada query mysql di php dan nilai dari variabel tersebut adalah nama prefix tabel yang sebelumnya sudah saya jelaskan pada contoh 3 tabel yang saya rubah.
Sampai disini penjelasan saya mengenai cara menggunakan tabel prefix mysql di PHP, semoga bermanfaat.