jueves, 13 de marzo de 2014

Creación y escritura de archivos con PHP


Bienvenid@s, a continuación podréis ver un ejemplo de como crear y escribir archivos con PHP. El ejemplo consiste en un formulario donde podrás indicar el nombre del archivo que quieres crear, otro campo para la extensión que podrá ser .txt o .html y hay un textarea donde podrás incluir el contenido del archivo, al enviar el formulario los datos serán procesados por PHP y se utilizarán las funciones fopen, fwrite y fclose para el manejo del archivo. El código del ejemplo está debajo del vídeo.



<?php
$msg = null;
if(isset($_POST["escribir"]))
{
$nombre = htmlspecialchars($_POST["nombre"]);
$extension = htmlspecialchars($_POST["extension"]);
$contenido = $_POST["contenido"];

$ruta = "archivos/".$nombre.$extension;

$manejador = fopen($ruta, "a");

if (fwrite($manejador, $contenido))
{
$msg = "Enhorabuena, fichero creado correctamente. Puedes verlo en ... ";
$msg .= "<a href='$ruta' target='_blank'>$ruta</a>";
}
else
{
$msg = "Ha ocurrido un error al crear el fichero.";
}
fclose($manejador);
}
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<h1>Crear y escribir ficheros con PHP</h1>
<strong><?php echo $msg ?></strong>
<form method="POST" action="<?php echo $_SERVER["PHP_SELF"] ?>">
<table>
<tr>
<td>Nombre del archivo:</td>
<td><input type="text" name="nombre"></td>
</tr>
<tr>
<td>Extensión del archivo:</td>
<td>
<select name="extension">
<option value=".txt">.txt</option>
<option value=".html">.html</option>
</select>
</td>
</tr>
<tr>
<td>Contenido:</td>
<td><textarea name="contenido" cols="30" rows="10"></textarea></td>
</tr>
</table>
<input type="hidden" name="escribir">
<input type="submit" value="Crear archivo">
</form>
</body>
</html>