chat
This commit is contained in:
parent
8995203020
commit
d9d53de693
22
admin.php
22
admin.php
@ -82,27 +82,7 @@ if ($is_logged_in && $pdo) {
|
|||||||
</head>
|
</head>
|
||||||
<body class="bg-light">
|
<body class="bg-light">
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg navbar-light bg-white shadow-sm">
|
<?php include 'navbar.php'; ?>
|
||||||
<div class="container">
|
|
||||||
<a class="navbar-brand" href="index.php">
|
|
||||||
<i class="bi bi-lightbulb-fill text-primary"></i>
|
|
||||||
LAMP Demo
|
|
||||||
</a>
|
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
|
||||||
<span class="navbar-toggler-icon"></span>
|
|
||||||
</button>
|
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
|
||||||
<ul class="navbar-nav ms-auto">
|
|
||||||
<li class="nav-item"><a class="nav-link" href="index.php">Home</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="vibe.php">Vibe</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="sandbox.php">Sandbox</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="seo.php">SEO</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link active" href="admin.php">Admin</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="contact.php">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<main class="container my-5">
|
<main class="container my-5">
|
||||||
<?php if (!$is_logged_in): ?>
|
<?php if (!$is_logged_in): ?>
|
||||||
|
|||||||
@ -1,8 +1 @@
|
|||||||
|
body { font-family: "Arial", sans-serif; background-color: #f0f0f0; color: #000; } .navbar, .card, footer { background-color: #f0f0f0 !important; border: 2px solid #000; box-shadow: none !important; border-radius: 0; } .navbar-brand, .nav-link, h1, h2, h5, p { color: #000 !important; } .btn-primary { background-color: #FFFF00; color: #000; border: 2px solid #000; border-radius: 0; } .vibe-preview { padding: 2rem; border: 2px solid #000; margin-top: 2rem; }
|
||||||
@import url("https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&display=swap");
|
|
||||||
body { font-family: "Orbitron", sans-serif; background: linear-gradient(to bottom, #2c003e, #ff00c1); color: #fff; }
|
|
||||||
.navbar, .card, footer { background-color: rgba(0,0,0,0.5) !important; backdrop-filter: blur(10px); border: 1px solid #ff00c1; }
|
|
||||||
.navbar-brand, .nav-link, h1, h2, h5, p { color: #fff !important; text-shadow: 0 0 10px #ff00c1; }
|
|
||||||
.btn-primary { background: #ff00c1; border: none; box-shadow: 0 0 15px #ff00c1; }
|
|
||||||
.vibe-preview { padding: 2rem; border: 1px solid #ff00c1; margin-top: 2rem; }
|
|
||||||
|
|
||||||
97
chat.php
Normal file
97
chat.php
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Chat with Gemini</title>
|
||||||
|
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
|
||||||
|
<style>
|
||||||
|
.chat-container {
|
||||||
|
max-width: 800px;
|
||||||
|
margin: 50px auto;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
border-radius: 10px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.chat-header {
|
||||||
|
background-color: #f8f9fa;
|
||||||
|
padding: 15px;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
font-size: 1.2rem;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.chat-box {
|
||||||
|
height: 400px;
|
||||||
|
overflow-y: auto;
|
||||||
|
padding: 15px;
|
||||||
|
}
|
||||||
|
.chat-input {
|
||||||
|
padding: 15px;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
.message {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
}
|
||||||
|
.user-message {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.bot-message .card-body {
|
||||||
|
background-color: #f1f1f1;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php include 'navbar.php'; ?>
|
||||||
|
<div class="container">
|
||||||
|
<div class="chat-container">
|
||||||
|
<div class="chat-header">
|
||||||
|
Chat with Gemini
|
||||||
|
</div>
|
||||||
|
<div class="chat-box" id="chat-box">
|
||||||
|
<!-- Messages will be appended here -->
|
||||||
|
</div>
|
||||||
|
<div class="chat-input">
|
||||||
|
<form id="chat-form">
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" id="user-input" class="form-control" placeholder="Ask me about the app...">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn btn-primary" type="submit">Send</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$("#chat-form").submit(function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var userInput = $("#user-input").val();
|
||||||
|
if (userInput.trim() === "") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Display user message
|
||||||
|
$("#chat-box").append('<div class="message user-message"><div class="card d-inline-block"><div class="card-body">' + userInput + '</div></div></div>');
|
||||||
|
$("#user-input").val("");
|
||||||
|
$("#chat-box").scrollTop($("#chat-box")[0].scrollHeight);
|
||||||
|
|
||||||
|
|
||||||
|
// Send user input to the bot
|
||||||
|
$.ajax({
|
||||||
|
url: "chat_logic.php",
|
||||||
|
type: "POST",
|
||||||
|
data: { message: userInput },
|
||||||
|
success: function(response) {
|
||||||
|
// Display bot response
|
||||||
|
$("#chat-box").append('<div class="message bot-message"><div class="card d-inline-block"><div class="card-body">' + response + '</div></div></div>');
|
||||||
|
$("#chat-box").scrollTop($("#chat-box")[0].scrollHeight);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
22
contact.php
22
contact.php
@ -40,27 +40,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
</head>
|
</head>
|
||||||
<body class="bg-light">
|
<body class="bg-light">
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg navbar-light bg-white shadow-sm">
|
<?php include 'navbar.php'; ?>
|
||||||
<div class="container">
|
|
||||||
<a class="navbar-brand" href="index.php">
|
|
||||||
<i class="bi bi-lightbulb-fill text-primary"></i>
|
|
||||||
LAMP Demo
|
|
||||||
</a>
|
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
|
||||||
<span class="navbar-toggler-icon"></span>
|
|
||||||
</button>
|
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
|
||||||
<ul class="navbar-nav ms-auto">
|
|
||||||
<li class="nav-item"><a class="nav-link" href="index.php">Home</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="vibe.php">Vibe</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="sandbox.php">Sandbox</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="seo.php">SEO</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="admin.php">Admin</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link active" href="contact.php">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<main class="container my-5">
|
<main class="container my-5">
|
||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
|
|||||||
22
index.php
22
index.php
@ -11,27 +11,7 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg navbar-light bg-white shadow-sm">
|
<?php include 'navbar.php'; ?>
|
||||||
<div class="container">
|
|
||||||
<a class="navbar-brand" href="index.php">
|
|
||||||
<i class="bi bi-lightbulb-fill text-primary"></i>
|
|
||||||
LAMP Demo
|
|
||||||
</a>
|
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
|
||||||
<span class="navbar-toggler-icon"></span>
|
|
||||||
</button>
|
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
|
||||||
<ul class="navbar-nav ms-auto">
|
|
||||||
<li class="nav-item"><a class="nav-link active" href="index.php">Home</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="vibe.php">Vibe</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="sandbox.php">Sandbox</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="seo.php">SEO</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="admin.php">Admin</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="contact.php">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
<section class="hero">
|
<section class="hero">
|
||||||
|
|||||||
58
sandbox.php
58
sandbox.php
@ -1,19 +1,55 @@
|
|||||||
<?php
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
function execute_php_code($code) {
|
<head>
|
||||||
// Ensure the code is wrapped in PHP tags
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>PHP Sandbox</title>
|
||||||
|
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
|
||||||
|
<link rel="stylesheet" href="assets/css/vibe.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php include 'navbar.php'; ?>
|
||||||
|
<div class="container mt-5">
|
||||||
|
<h1>PHP Sandbox</h1>
|
||||||
|
<p>Write and execute PHP code in a sandboxed environment.</p>
|
||||||
|
<form method="post">
|
||||||
|
<div class="form-group">
|
||||||
|
<textarea name="code" class="form-control" rows="10" placeholder="Enter your PHP code here..."><?php echo isset($_POST['code']) ? htmlspecialchars($_POST['code']) : ''; ?></textarea>
|
||||||
|
</div>
|
||||||
|
<button type="submit" class="btn btn-primary">Execute</button>
|
||||||
|
</form>
|
||||||
|
<hr>
|
||||||
|
<?php
|
||||||
|
function execute_php_code($code) {
|
||||||
if (strpos(trim($code), '<?php') !== 0) {
|
if (strpos(trim($code), '<?php') !== 0) {
|
||||||
$code = '<?php ' . $code . ' ?>';
|
$code = '<?php ' . $code;
|
||||||
}
|
}
|
||||||
|
|
||||||
$descriptorspec = [
|
$descriptorspec = [
|
||||||
0 => ["pipe", "r"], // stdin
|
0 => ["pipe", "r"],
|
||||||
1 => ["pipe", "w"], // stdout
|
1 => ["pipe", "w"],
|
||||||
2 => ["pipe", "w"] // stderr
|
2 => ["pipe", "w"]
|
||||||
];
|
];
|
||||||
|
|
||||||
$process = proc_open('php', $descriptorspec, $pipes);
|
$process = proc_open('php', $descriptorspec, $pipes);
|
||||||
|
|
||||||
if (is_resource($process)) {
|
if (is_resource($process)) {
|
||||||
fwrite($pipes[0], $code);
|
fwrite($pipes[0], $code);
|
||||||
fclose($pipes[0]);
|
fclose($pipes[0]);
|
||||||
|
$output = stream_get_contents($pipes[1]);
|
||||||
|
fclose($pipes[1]);
|
||||||
|
$error = stream_get_contents($pipes[2]);
|
||||||
|
fclose($pipes[2]);
|
||||||
|
proc_close($process);
|
||||||
|
return $output ?: $error;
|
||||||
|
}
|
||||||
|
return 'Failed to create process.';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['code'])) {
|
||||||
|
$code = $_POST['code'];
|
||||||
|
$output = execute_php_code($code);
|
||||||
|
echo '<h3>Output:</h3>';
|
||||||
|
echo '<pre>' . htmlspecialchars($output) . '</pre>';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|||||||
22
seo.php
22
seo.php
@ -103,27 +103,7 @@ if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['url'])) {
|
|||||||
</head>
|
</head>
|
||||||
<body class="bg-light">
|
<body class="bg-light">
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg navbar-light bg-white shadow-sm">
|
<?php include 'navbar.php'; ?>
|
||||||
<div class="container">
|
|
||||||
<a class="navbar-brand" href="index.php">
|
|
||||||
<i class="bi bi-lightbulb-fill text-primary"></i>
|
|
||||||
LAMP Demo
|
|
||||||
</a>
|
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
|
||||||
<span class="navbar-toggler-icon"></span>
|
|
||||||
</button>
|
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
|
||||||
<ul class="navbar-nav ms-auto">
|
|
||||||
<li class="nav-item"><a class="nav-link" href="index.php">Home</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="vibe.php">Vibe</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="sandbox.php">Sandbox</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link active" href="seo.php">SEO</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="admin.php">Admin</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="contact.php">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<main class="container my-5">
|
<main class="container my-5">
|
||||||
<div class="text-center mb-5">
|
<div class="text-center mb-5">
|
||||||
|
|||||||
17
vibe.php
17
vibe.php
@ -68,22 +68,7 @@ if ($pdo) {
|
|||||||
</head>
|
</head>
|
||||||
<body class="bg-light">
|
<body class="bg-light">
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-lg navbar-light bg-white shadow-sm">
|
<?php include 'navbar.php'; ?>
|
||||||
<div class="container">
|
|
||||||
<a class="navbar-brand" href="index.php"><i class="bi bi-lightbulb-fill text-primary"></i> LAMP Demo</a>
|
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"><span class="navbar-toggler-icon"></span></button>
|
|
||||||
<div class="collapse navbar-collapse" id="navbarNav">
|
|
||||||
<ul class="navbar-nav ms-auto">
|
|
||||||
<li class="nav-item"><a class="nav-link" href="index.php">Home</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link active" href="vibe.php">Vibe</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="sandbox.php">Sandbox</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="seo.php">SEO</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="admin.php">Admin</a></li>
|
|
||||||
<li class="nav-item"><a class="nav-link" href="contact.php">Contact</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<main class="py-5">
|
<main class="py-5">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user