Generate file database codeigniter

permisi gan, saya ingin membuat installer seperti cms pada umumnya menggunakan codeigniter gan

jadi diform yang saya buat berisi username,pass,host dan db.

setelah user mensubmit form maka otomatis akan membaut file php baru yang akan menimpa file config database codeigniter

untuk masalah mengenerate sudah bisa semua gan hanya ada masalah di penulisan variable yang dimana tidak diapit oleh tanda petik.

script generate :

$text = '<?php
                        defined("BASEPATH") OR exit("No direct script access allowed");
                        $active_group = "default";
                        $query_builder = TRUE;

                        $db["default"] = array(
                                "dsn"	=> "",
                                "hostname" =>'.$this->input->post('host').',
                                "username" => '.$this->input->post('user').',
                                "password" =>'.$this->input->post('pass').',
                                "database" =>'.$this->input->post('db').',
                                "dbdriver" => "mysqli",
                                "dbprefix" => "",
                                "pconnect" => FALSE,
                                "db_debug" => (ENVIRONMENT !== "production"),
                                "cache_on" => FALSE,
                                "cachedir" => "",
                                "char_set" => "utf8",
                                "dbcollat" => "utf8_general_ci",
                                "swap_pre" => "",
                                "encrypt" => FALSE,
                                "compress" => FALSE,
                                "stricton" => FALSE,
                                "failover" => array(),
                                "save_queries" => TRUE
                        );?>';
file_put_contents('application/config/database.php', $text);

hasilnya generate nya (saya tambahkan komentar gan agar lebih jelas masalahnya) :

<?php
                        defined("BASEPATH") OR exit("No direct script access allowed");
                        $active_group = "default";
                        $query_builder = TRUE;

                        $db["default"] = array(
                                "dsn"	=> "",
                                "hostname" =>localhost, // ini seharusnya 'localhost'
                                "username" => root, // ini seharusnya 'root'
                                "password" =>, // ini seharusnya ''
                                "database" =>database_db, // ini seharusnya 'database_db'
                                "dbdriver" => "mysqli",
                                "dbprefix" => "",
                                "pconnect" => FALSE,
                                "db_debug" => (ENVIRONMENT !== "production"),
                                "cache_on" => FALSE,
                                "cachedir" => "",
                                "char_set" => "utf8",
                                "dbcollat" => "utf8_general_ci",
                                "swap_pre" => "",
                                "encrypt" => FALSE,
                                "compress" => FALSE,
                                "stricton" => FALSE,
                                "failover" => array(),
                                "save_queries" => TRUE
                        );?>

saya sudah coba makai untuk nampilkan tanda petik tapi error

$text = '<?php
.................
"hostname" =>'.\"$this->input->post('host')\".',
....................

isi errornya :

Message: syntax error, unexpected '"', expecting identifier (T_STRING)

mohon bantuannya gan, terimakasih

avatar Terra
@Terra

81 Kontribusi 39 Poin

Dipost 4 tahun yang lalu

1 Jawaban:

Jawaban Terpilih

sudah fix

<pre> "hostname" =&gt;'. '"'.$this-&gt;input-&gt;post('host').'", </pre>

nggk perlu makai backslash ternyata

avatar Terra
@Terra

81 Kontribusi 39 Poin

Dipost 4 tahun yang lalu

Login untuk ikut Jawaban