Guía completa: ¿Qué es XAMPP y cómo instalarlo en Windows?
Guía completa: ¿Qué es XAMPP y cómo instalarlo en Windows?: En el mundo del desarrollo web, contar con un entorno de pruebas local es esencial para crear y probar aplicaciones antes de lanzarlas al público. Aquí es donde entra en juego XAMPP, una herramienta gratuita y de código abierto que facilita la creación de un servidor local en tu computadora. XAMPP incluye componentes clave como Apache, MySQL, PHP y Perl, proporcionando todo lo necesario para desarrollar y probar tus proyectos web de manera eficiente.
¿Por qué elegir XAMPP?
XAMPP es popular entre desarrolladores por su facilidad de uso y configuración. No solo te permite simular un entorno de servidor real en tu máquina local, sino que también es compatible con múltiples sistemas operativos, incluyendo Windows, macOS y Linux. Esto lo convierte en una opción versátil y accesible para desarrolladores de todos los niveles.
Pasos para instalar XAMPP en Windows
Descargar XAMPP: Visita el sitio oficial de Apache Friends y descarga la versión más reciente de XAMPP para Windows.
Ejecutar el instalador: Abre el archivo descargado y sigue las instrucciones del asistente de instalación.
Seleccionar componentes: Durante la instalación, podrás elegir los componentes que deseas instalar. Para un entorno básico, asegúrate de seleccionar Apache, MySQL, PHP y phpMyAdmin.
Configurar XAMPP: Una vez instalado, abre el Panel de Control de XAMPP y arranca los servicios de Apache y MySQL.
Verificar la instalación: Abre tu navegador web y escribe http://localhost
en la barra de direcciones. Si ves la página de bienvenida de XAMPP, ¡felicidades! Has instalado XAMPP correctamente.
¿Cómo puedo crear una base de datos en XAMPP?
Crear una base de datos en XAMPP es un proceso sencillo. Aquí tienes los pasos detallados para hacerlo:
Inicia XAMPP: Abre el Panel de Control de XAMPP y asegúrate de que los módulos de Apache y MySQL estén en funcionamiento. Puedes hacerlo haciendo clic en el botón “Start” junto a cada uno.
Accede a phpMyAdmin: Abre tu navegador web y escribe http://localhost/phpmyadmin
en la barra de direcciones. Esto te llevará a la interfaz de phpMyAdmin, una herramienta web para gestionar bases de datos MySQL.
Crear una nueva base de datos:
En la página principal de phpMyAdmin, haz clic en la pestaña “Databases” en la parte superior.
En el campo “Create database”, introduce el nombre que deseas para tu nueva base de datos.
Haz clic en el botón “Create” para crear la base de datos.
Crear una tabla:
Una vez creada la base de datos, haz clic en su nombre en la lista de bases de datos a la izquierda.
En la nueva página, introduce el nombre de la tabla y el número de columnas que deseas crear.
Haz clic en “Go” y luego define los nombres de las columnas, sus tipos de datos y otras propiedades según tus necesidades.
Finalmente, haz clic en “Save” para crear la tabla.
¡Y eso es todo!
Algunos ejercicios con xampp y php
Para los alumnos del curso!!!
Copia los archivos y colócalos en la htdocs en el directorio de Xampp. Para llamar las pagina: http://localhost/cookies.php
buclespost.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bucles por POST</title>
</head>
<body>
<div id=container>
<nav>
<h3>Tu menu va aqui</h3>
</nav>
<?php
if (isset($_POST['fruta']) && !empty($_POST['fruta'])) {
echo "Las frutas favoritas son: ";
foreach ($_POST['fruta'] as $key => $value) { //con el foreacf mostramos el array
echo $value.", ";
}
echo "<br><br>";
var_dump($_POST['fruta']);
}else if (isset($_POST["numero"]) && !empty($_POST['numero']) && ($num = intval($_POST['numero']))>3) { //Recibimos el numero del formulario && (isset ($_POST['numero'])>3)
echo "Este es el numero enviado: ".$num; //y con ($num = intval($_POST['numero'])) lo guaardamos en una variable como int (o numero)
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<?php
for ($i = 1; $i <= $num; $i++) {
//echo $i;
?>
<label>Tu fruta favorita <?php echo $i; ?></label><br>
<input type="text" name="fruta[]" placeholder="Nombre de la Fruta"><br> <!--añadimos [] para que se guarda el array-->
<?php
}
?>
<br>
<input type="submit" id="enviar" value="Enviar"><br><br>
<?php
?>
</form>
<?php
}else {
?>
<div id="formulario"></div>
<h1>Bucles por POST</h1>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<label for="numero">Escribe un numero mayor que 3</label><br>
<input type="number" id="numero" name="numero" placeholder="Numero" required><br><br>
<?php
if (isset($_POST["numero"]) && !empty($_POST['numero']) && ($num = intval($_POST['numero']))<=3){
echo "El numero que has intrudocido es: ".$num;
echo "<h3 style=\"color: red\">El numero debe ser mayor que 3</h3>";
}
?>
<input type="submit" id="enviar" value="Enviar"><br><br>
</form>
</div>
<?php
} //Serramos if
?>
</div>
</body>
</html>
y cookies.php
<!DOCTYPE html>
<?php
if (isset($_POST['nombre']) && !empty($_POST['nombre']) && isset($_POST['apellido']) && !empty($_POST['apellido'])) {
$cookie_name = "user";
$cookie_value = $_POST['nombre']." ".$_POST['apellido'];
setcookie($cookie_name, $cookie_value, time() + (30), "/"); // 86400 = 1 day
//es lo mismo como lo de arriba
//setcookie("user",($_POST['nombre']." ".$_POST['apellido']), time() + (30), "/" );
}elseif (isset($_POST['borrarcookie'])) {
setcookie("user", "", time() - 1);
var_dump($_COOKIE);
}
?>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Setear Cookies</title>
</head>
<body>
<div id="contenedor"><!--Inicio contenedor -->
<?php
if (isset($_COOKIE['user']) && !empty($_COOKIE['user'])) {
var_dump($_COOKIE['user']);
?>
<br><br>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<input type="submit" name="borrarcookie" value="Borrar Cookie">
</form>
<?php
if (isset($_COOKIE['user']) && empty($_COOKIE['user'])) {
echo("Las cookies han sido borradas");
}
?>
<?php
}else {
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<label for="nombre">Escribe un nombre</label><br>
<input type="text" id="nombre" name="nombre" placeholder="Nombre"><label> * </label><br><br>
<label for="apellido">Escribe un apellido</label><br>
<input type="text" id="apellido" name="apellido" placeholder="Apellido"><label> * </label><br><br>
<input type="submit" id="enviar" value="Enviar"><br><br>
</form>
<?php
}
?>
</div><!--Fin contenedor -->
</body>
</html>
sesion.php
<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
echo("<h2>Has iniciado sesion ".$_SESSION['count']." veces. </h2>");
}
if (isset($_POST['nombre']) && !empty($_POST['nombre'])) {
$_SESSION['nombre']=$_POST['nombre'];
echo("<h2 style=\"color:green\">Has iniciado sesion como ".$_SESSION['nombre']."</h2>");
}else {
echo("<h2 style=\"color:red\">Hola debes iniciar sesion </h2>");
}
if (isset($_POST['borra'])) {
unset($_SESSION['nombre']);
}
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sesiones</title>
<style>
</style>
</head>
<body>
<div id="container">
<?php
if (isset($_SESSION['nombre']) && !empty($_SESSION['nombre'])) {
echo("<h2>Hola ".$_SESSION['nombre']."</h2>");
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<input type="submit" id="enviar" name="borra" value="Borrar sesion">
</form>
<?php
}else {
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<label for="nombre">Escribe tu nombre</label><br>
<input type="text" id="nombre" name="nombre" placeholder="Nombre" require><br><br>
<input type="submit" id="enviar" value="Enviar"><br><br>
</form>
<?php
}
?>
<br>
<?php
function getVisitorIp()
{
// Recogemos la IP de la cabecera de la conexión
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ipAdress = $_SERVER['HTTP_CLIENT_IP'];
}
// Caso en que la IP llega a través de un Proxy
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ipAdress = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
// Caso en que la IP lleva a través de la cabecera de conexión remota
else
{
$ipAdress = $_SERVER['REMOTE_ADDR'];
}
return $ipAdress;
}
echo("Tu IP es: ".getVisitorIp());
?>
</div>
</body>
</html>
superglobals.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Superglobals</title>
</head>
<body>
<?php
echo "<h1> La variable _SERVER es una variable súper global <br> de PHP que contiene información sobre encabezados, rutas y ubicaciones de scripts. </h1>";
echo "Las comillas simples tratan el texto como una cadena <br> mientras que las dobles comprieban si hay algo que se ejecuta";
echo "<br><br>";
echo 'Se ejecuta de esta manera: echo $_SERVER["PHP_SELF"];';
echo "<br>";
echo "<h3>PHP_SELF</h3>";
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo "<h3>SERVER_NAME</h3>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo "<h3>HTTP_HOST</h3>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo "<h3>HTTP_USER_AGENT</h3>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo "<h3>SCRIPT_NAME</h3>";
echo $_SERVER['SCRIPT_NAME'];
echo "<br>";
echo "<br><br>";
echo "<h3>HTTP_USER_AGENT</h3>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br><br>";
echo "<h3>DOCUMENT_ROOT</h3>";
echo $_SERVER['DOCUMENT_ROOT'];
echo "<br><br>";
echo "<h3>SERVER_ADMIN</h3>";
echo $_SERVER['SERVER_ADMIN'];
echo "<br><br>";
echo "<h3>SERVER_SOFTWARE</h3>";
echo $_SERVER['SERVER_SOFTWARE'];
echo "<br><br>";
echo "<h3>SERVER_PROTOCOL</h3>";
echo $_SERVER['SERVER_PROTOCOL'];
echo "<br><br>";
echo("<h2>Mostramos la clave y el valor con un foreach</h2>");
foreach($_SERVER as $key => $value) { //con el foreacf mostramos el array
echo("<b>La clave: </b>".$key."<br> <b>Y el valor: </b>".$value."<br><br>");
}
?>
</body>
</html>
Conclusión ¿Qué es XAMPP y cómo instalarlo en Windows?
Con XAMPP, puedes transformar tu computadora en un potente entorno de desarrollo web. Ya sea que estés creando un sitio web desde cero o probando nuevas funcionalidades, XAMPP te proporciona las herramientas necesarias para llevar tus proyectos al siguiente nivel. Sigue los pasos anteriores y comienza a explorar las posibilidades que XAMPP tiene para ofrecer.