| |
Tutorial
sistema_basico_enlaces |
Sábado 31 de Marzo del 2007 07:11:50 | Comentarios : 0
| Visitas:
434 |
Sistema basico de enlaces Como hacer un sistema basico de enlaces que te permita contar los clicks visitados en cada enlace sin ocupar mucho espacio, que te permita ver el Titulo, Pagina del URL, Descripcion, Tu Nombre, Tu Email . Mostrar el listado de enlaces,borrarlos y todo ello en un solo codigo:
<title>Sistema simple de enlaces</title><body> <? // by phpmysql - www.recursosphp.tk - www.phpmysql.tk// // Funcion de abrir function abrir($filename) { $fd = @fopen ($filename, "a+"); $archivo = @fread ($fd, filesize ($filename)); @fclose ($fd); return $archivo; } // Funcion de guardar function guardar($filename) { $fd = @fopen ($filename, "w+"); $archivo = @fread ($fd, filesize ($filename)); @fclose ($fd); return $archivo; } ?> <? // Sumar los hits if($visitar){ $visitar = "$visitar.txt"; if(file_exists($visitar)) { $codigo = abrir($visitar); $datos = explode("!", $codigo); // Guardamos los datos y sumamos los clicks $titulo = $datos[0]; $url = $datos[1]; $descripcion = $datos[2]; $tunombre = $datos[3]; $email = $datos[4]; $sumar = $datos[5]+1; // Creamos el archivo fisicamente $crea = fopen($visitar,"w"); fwrite($crea, "$titulo!$url!$descripcion!$tunombre!$email!$sumar"); fclose($crea); // Lo visitamos echo "<script>location='$url'</script>"; } } ?> <? // Mostrar los enlaces $path = "."; $dir = opendir($path); while ($elemento = readdir($dir)) { $extensiones = explode(".",$elemento) ; $nombre = $extensiones[0] ; $nombre2 = $extensiones[1] ; $tipo = array ("txt"); if(in_array($nombre2, $tipo)){ $contenido = abrir($elemento); $datos = explode("!", $contenido); echo "<font size='2' face='Verdana, Arial, Helvetica, sans-serif'> Titulo: <b>$datos[0]</b> <a href='enlacesborrar.php?borrar=$nombre'>[x]</a> <a href='enlaceseditar.php?id=$nombre'>[E]</a> <br> Pagina del URL: <a href='$PHP_SELF?visitar=$nombre' target='_blank'>$datos[1]</a> <br> Descripcion: $datos[2] <br> Nombre: $datos[3] <br> Email: <a href='mailto:$datos[4]?subject=Aviso de enlace roto&body=Enlace $datos[0] roto, en la url $_SERVER[HTTP_HOST]'>$datos[4]</a> <br> Hits: $datos[5] <hr> </font>" ; } } closedir($dir); ?> <? // Agregar los enlaces if($enviar){ $fecha = time(); // Comprobamos que los datos no estan vacios if($titulo == ""){ $error .= "No has puesto el titulo<br>";} if($url == "http://"){ $error .= "No has puesto la url<br>";} if($descripcion == ""){$error .= "No has puesto una descripcion<br>";} if($tunombre == ""){$error .= "No has puesto tu nombre<br>";} if($email == ""){$error .= "No has puesto tu email<br>";} if($error) { echo " <font size='2' face='Verdana, Arial, Helvetica, sans-serif'> <b>Error</b> <p><font color='#FF0000'>$error</font> <p><a href='javascript:history.back()'>Regresar</a> </font> " ; exit ; } // Quitamos el html $titulo = htmlspecialchars(trim($_POST["titulo"])); $url = htmlspecialchars(trim($_POST["url"])); $descripcion = htmlspecialchars(trim($_POST["descripcion"])); $tunombre = htmlspecialchars(trim($_POST["tunombre"])); $email = htmlspecialchars(trim($_POST["email"])); // Enviamos fisicamente los enlaces $crea = fopen("$fecha.txt","w"); fwrite($crea, "$titulo!$url!$descripcion!$tunombre!$email!0"); fclose($crea); echo "<font size='2' face='Verdana, Arial, Helvetica, sans-serif'>Enlace agregado con exito, <a href='$_SERVER[REQUEST_URI]'>pulsa aqui</a><br></font> "; } ?> <br> <font size='2' face='Verdana, Arial, Helvetica, sans-serif'> <form name="form" method="post" action="<? echo $_SERVER["REQUEST_URI"]; ?>"> Titulo de la pagina: <input name="titulo" type="text" id="titulo"> <br> Página del URL: <input name="url" type="text" value="http://"> <br> Descripcion:<br> <textarea name="descripcion" cols="34" rows="9" id="descripcion"></textarea> <br> Nombre : <input name="tunombre" type="text" id="tunombre"> <br> Email: <input name="email" type="text" id="email"> <br> <br> <input type="submit" name="enviar" value="Enviar"> </form> </font> </body>
|
|
|
|
|