I have a really simple SQL script
$addQuery = "CREATE TABLE IF NOT EXISTS WORDLIST(
english VARCHAR(20),
korean VARCHAR(20),
swedish VARCHAR(20),
synonyms TEXT
);CREATE UNIQUE INDEX englishIndex ON WORDLIST(english);";
This query works in phpmyadmin
but when I do the same thing just in php script
database is empty.
BUT! If I remove CREATE UNIQUE query in php and do just CREATE TABLE like this,
$addQuery = "CREATE TABLE IF NOT EXISTS WORDLIST(
english VARCHAR(20),
korean VARCHAR(20),
swedish VARCHAR(20),
synonyms TEXT
);
";
php works, I just can't understand why. What's wrong with my code?
here is my full php code
<?php
header('Access-Control-Allow-Origin: http://localhost:3000/');
$addValue = $_GET['Add'];
if (!preg_match('/[^A-Za-z]+/', $addValue)&&!preg_match('/\s/', $addValue))
{
include 'db/db_connection.php';
$conn = mysqli_connect('localhost','root','','worddb');
if(connectDB($conn)){
$addQuery = "CREATE TABLE IF NOT EXISTS WORDLIST(
english VARCHAR(20),
korean VARCHAR(20),
swedish VARCHAR(20),
synonyms TEXT
);CREATE UNIQUE INDEX englishIndex ON WORDLIST(english);
";
if (mysqli_query($conn, $addQuery)) {
echo "Table WORDLIST created successfully";
}
echo $addQuery;
mysqli_close($conn);
}
}else{
echo "search again";
}
?>
connectDB function is from db_connection.php
<?php
function connectDB($conn){
$connectStatus = null;
if (!$conn) {
$connectStatus = false;
die("Connection failed: " . $conn->connect_error);
}else{
echo "Connected successfully";
$connectStatus = true;
}
return $connectStatus;
}
?>