significa hypertext Pre Processor
se encarga de traducir su idioma a HTML para las paginas web y el servidore envia ese codigo HTML en ves del original PHP donde podria hacer una modificacion.
Es un lenjuague muy parecido a C.
Para la practica se requiere levantar un servidor.
Antes de Crear
sudo dnf install httpd
sudo dnf install php
sudo dnf install php php-mysqlnd
sudo systemctl start httpd
sudo systemctl enable httpd
sudo chmod -R 755 /var/www/html/mi_pagina_php
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
sudo systemctl status httpd
sudo systemctl restart httpd
sudo tail -f /var/log/httpd/error_log
instalar el servidor LAMP hasta crear un programa en PHP que pueda generar un RAID simulado y conectarse a MySQL.
sudo systemctl start httpd
sudo systemctl enable httpd
Abre un navegador y accede a
http://<IP_del_Servidor>
sudo firewall-cmd --list-all
sudo firewall-cmd --permanent --add-port=80/tcpsudo firewall-cmd --reload
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
sudo systemctl start mariadb
sudo mysql_secure_installation
(enter)
y
yadmin
y
y
y
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
2. Crear la base de datos en MySQL
sudo mysql -u root -p
CREATE DATABASE lamp_practice;
USE lamp_practice;
CREATE TABLE raid_simulation (
id INT AUTO_INCREMENT PRIMARY KEY,
data VARCHAR(255) NOT NULL
);
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>RAID Simulation with PHP</title>
</head>
<body>
<h1>RAID Simulation with PHP</h1>
<?php
// Conexión a la base de datos
$servername = "localhost";
$username = "root";
$password = "admin"; // Cambia por tu contraseña de root de MySQL
$dbname = "lamp_practice";
// Crear conexión
$conn = new mysqli($servername, $username, $password, $dbname);
// Verificar conexión
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "<p>Connected to the database successfully!</p>";
// Simulación de RAID: guardar datos en bloques
$data_blocks = ["Block 1 data", "Block 2 data", "Block 3 data"];
echo "<h2>Storing Data Blocks:</h2>";
foreach ($data_blocks as $block) {
$sql = "INSERT INTO raid_simulation (data) VALUES ('$block')";
if ($conn->query($sql) === TRUE) {
echo "<p>Stored: $block</p>";
} else {
echo "<p>Error: " . $conn->error . "</p>";
}
}
echo "<h2>Retrieving Data Blocks:</h2>";
$sql = "SELECT * FROM raid_simulation";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - Data: " . $row["data"] . "<br>";
}
} else {
echo "No data found.";
}
$conn->close();
?>
</body>
</html>
mysql -u root -p
USE mysql;
UPDATE user SET password = PASSWORD('admin') WHERE user = 'root';
FLUSH PRIVILEGES;
EXIT;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Crear un usuario específico para PHP
mysql -u root -p
CREATE USER 'php_user'@'localhost' IDENTIFIED BY 'admin';
Agregar Bash al proyecto
Si necesitas integrar un script Bash para manejar el servidor, por ejemplo, para reiniciar Apache o limpiar datos de la base de datos, puedes hacerlo.
sudo nano /var/www/html/script.sh
#!/bin/bash
echo "Cleaning up the database..."
mysql -u root -p -e "USE lamp_practice; DELETE FROM raid_simulation;"
echo "Database cleaned successfully!"
nano /var/www/html/exec_script.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Run Script</title>
</head>
<body>
<h1>Run Bash Script from PHP</h1>
<?php
// Ejecutar el script Bash
$output = shell_exec('/var/www/html/script.sh 2>&1'); // Ejecuta el script y captura la salida
echo "<pre>$output</pre>"; // Muestra la salida en el navegador
?>
</body>
operaciones matematicas
sudo nano /var/www/html/math_operations.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Math Operations in PHP</title>
</head>
<body>
<?php
$num1 = 10;
$num2 = 5;
$sum = $num1 + $num2;
$difference = $num1 - $num2;
$product = $num1 * $num2;
$quotient = $num1 / $num2;
$modulus = $num1 % $num2;
echo "<h2>Math Operations</h2>";
echo "Number 1: $num1<br>";
echo "Number 2: $num2<br><br>";
echo "Suma: $sum<br>";
echo "Resta: $difference<br>";
echo "Multiplicacion: $product<br>";
echo "Division: $quotient<br>";
echo "Modulos (remainder): $modulus<br>";
?>
</body>
</html>
fe de erratas
Poner la contraseña correcta para root en el codigo, caso contrario la conexion fallara.
No hay comentarios.:
Publicar un comentario