fix: auto-import database script and Dockerfile update for Coolify deploy
This commit is contained in:
@@ -9,6 +9,7 @@ COPY 02/ /var/www/html/02/
|
||||
COPY 03/ /var/www/html/03/
|
||||
COPY final/ /var/www/html/final/
|
||||
COPY project_final/ /var/www/html/project_final/
|
||||
COPY database/ /var/www/html/database/
|
||||
|
||||
RUN chown -R www-data:www-data /var/www/html
|
||||
|
||||
|
||||
@@ -4,11 +4,7 @@
|
||||
-- Import file ini jika ingin membuat ulang database dari awal.
|
||||
-- Perhatian: tabel lama dengan nama yang sama akan dihapus.
|
||||
|
||||
CREATE DATABASE IF NOT EXISTS webgis_db
|
||||
CHARACTER SET utf8mb4
|
||||
COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
USE webgis_db;
|
||||
-- Database selected via connection string
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
$host = '203.24.51.230';
|
||||
$port = 33060;
|
||||
$user = 'root';
|
||||
$pass = 'oyMK5S18DMjHtOSVxoQWy2n0YASA5QJuyko00udOuneeijdiNFENgVG2ZMXFL36H';
|
||||
|
||||
$conn = mysqli_connect($host, $user, $pass, '', $port);
|
||||
|
||||
if (!$conn) {
|
||||
die("Connection failed: " . mysqli_connect_error() . "\n");
|
||||
}
|
||||
|
||||
$sql = file_get_contents(__DIR__ . '/database/webgis_db.sql');
|
||||
if (mysqli_multi_query($conn, $sql)) {
|
||||
do {
|
||||
if ($res = mysqli_store_result($conn)) {
|
||||
mysqli_free_result($res);
|
||||
}
|
||||
} while (mysqli_more_results($conn) && mysqli_next_result($conn));
|
||||
echo "Database imported successfully!\n";
|
||||
} else {
|
||||
echo "Error importing: " . mysqli_error($conn) . "\n";
|
||||
}
|
||||
mysqli_close($conn);
|
||||
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/config/app.php';
|
||||
|
||||
$host = env('DB_HOST', 'localhost');
|
||||
$port = env('DB_PORT', 3306);
|
||||
$user = env('DB_USERNAME', 'root');
|
||||
$pass = env('DB_PASSWORD', '');
|
||||
$db = env('DB_DATABASE', 'webgis_db');
|
||||
|
||||
try {
|
||||
$pdo = new PDO("mysql:host=$host;port=$port;dbname=$db;charset=utf8mb4", $user, $pass);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
|
||||
// Read SQL file
|
||||
$sqlFile = __DIR__ . '/../database/webgis_db.sql';
|
||||
if (!file_exists($sqlFile)) {
|
||||
die("SQL file not found at: $sqlFile");
|
||||
}
|
||||
|
||||
$sql = file_get_contents($sqlFile);
|
||||
|
||||
// Split into statements and execute
|
||||
$pdo->exec($sql);
|
||||
|
||||
echo "Database imported successfully to $db at $host!";
|
||||
} catch (PDOException $e) {
|
||||
echo "Connection failed: " . $e->getMessage() . "\n";
|
||||
}
|
||||
Reference in New Issue
Block a user