php - CREATE DATABASE query fails -


ok, testing install script , got error database not exist, means database create query failed,

here full code:

<?php if(!file_exists('install.lock')) { if(!isset($_get['success'])) { echo " <!doctype html> <head>     <title> lorem ipsum dolor </title>     <link href='../assets/css/style.css' rel='stylesheet'>     <style type='text/css'>       body {         text-align:center;       }     </style> </head> <body> <div id='containeradmin'> <br /> <h2> lorem ipsum </h2> <br /> <h4> please follow steps below install new copy of ticketexpress </h4> <br /> <form action='' method='post'> <input type='text' name='dbhost' placeholder='mysql database host' size='23'> <input type='text' name='dbuser' placeholder='mysql database username' size='23'> <input type='text' name='dbpass' placeholder='mysql database password' size='23'>  <br /> <input type='text' name='admin_username' placeholder='admin username'>  <input type='text' name='admin_password' placeholder='admin password'> <br /> <input type='text' name='sitename' placeholder='website name' size='23'> <br /> <input type='submit' name='install' class='btn btn-primary' value='install'> </form> <p> lorem ipsum dolor </p> <br /> </body> </html> ";   if(isset($_post['install'])) { $adminusername = htmlspecialchars(strip_tags($_post['admin_username'])); $adminpassword = htmlspecialchars(strip_tags($_post['admin_password'])); $dbhost = strip_tags($_post['dbhost']); $dbuser = strip_tags($_post['dbuser']); $dbpass = strip_tags($_post['dbpass']); $sitename = strip_tags($_post['sitename']); if(!$con) { echo "please configure database information in config.php"; } $sql = "create table tickets ( id int not null auto_increment primary key, name varchar(32), email varchar(40), subject varchar(40), message text(500), open varchar(10), timecreated varchar(40), timeupdated varchar(40), hash varchar(100) )"; $sql2 = "create table config  ( adminusername varchar(32), adminpassword varchar(32) )"; $sql3 = "insert config (adminusername,adminpassword) values ('$adminusername','$adminpassword')"; if(empty($adminusername)) { echo "admin username should not empty!"; } elseif (empty($adminpassword)) { echo "admin password should not empty!"; } elseif(empty($dbhost)) { echo "mysql database host should not empty!"; } elseif(empty($dbuser)) { echo "mysql database user should not empty!"; /* } elseif(empty($dbname)) { echo "mysql database name should not empty!"; */ } elseif(empty($sitename)) { echo "please enter name new installation (it can whatever want)"; } else { $file = fopen('../configuration/config.php','r+'); fwrite($file, '<?php $dbhost = "'. $dbhost.'"; $dbuser = "'. $dbuser.'"; $dbpass = "'. $dbpass.'"; $dbname = "lol"; $sitename = "'. $sitename.'"; $con = new mysqli ($dbhost, $dbuser, $dbpass, $dbname);'); include('../configuration/config.php'); $con->query("create database lol"); $con->query($sql); $con->query($sql2); $con->query("delete config"); $con->query($sql3); fopen('install.lock','w'); header('location: ../index.php'); } } } } else { echo "installation locked"; } 

the following line failing me:

$con->query("create database lol"); 

does know why won't work?

so if understand code correctly, you're writing code config file, including config file access connection object. here's problem - connection object being constructed under assumption database lol has been created. that's not true.

what need declare mysqli object without database defined, so:

fwrite($file, '<?php $dbhost = "'. $dbhost.'"; $dbuser = "'. $dbuser.'"; $dbpass = "'. $dbpass.'"; $sitename = "'. $sitename.'"; $con = new mysqli ($dbhost, $dbuser, $dbpass);'); 

Comments

Popular posts from this blog

c# - Send Image in Json : 400 Bad request -

jquery - Fancybox - apply a function to several elements -

An easy way to program an Android keyboard layout app -