Posted on : 13-08-2009 | By : erufenix | In : PHP, Programación
0
Digamos que queremos hacer un respaldo de archivos del servidor o copiar archivos de una ubicación a otra. Para esto este código nos puede servir.
En primera tenemos $dir y $dir2 que corresponden a la ruta origen y la ruta destino respectivamente, luego hacemos cambios a un script que ya había publicado antes, donde:
$dp=opendir($dir); abre el directorio para su lectura.
while($file=readdir($dp)) ciclo que lee el directorio mientras existan archivos en él.
Con $extension=getExtension($file); aplicamos un filtro para solo copiar archivos con ciertas extensiones
En la variable $cmd guardamos una cadena con el comando cp con sus parametros y con la función exec() ejecutamos el comando en el sistema.
function getExtension($archivo){$a=explode(".",$archivo);return$a[count($a)-1];}$dir= getRuta($CveCom);$dir2= getRuta($comn);if(!file_exists($dir))//verificamos que existe el directorio{echo"<br/>Error... El directorio no existe. Configura bien tu variable \"dir\" ...";}else{$i=0;//echo $dir;$dp=opendir($dir);while($file=readdir($dp))//hacemos un ciclo para guardar los nombres de los directorios y archivos que se tienen en el directorio actual{$extension=getExtension($file);if($extension=="php"||$extension=="html"||$extension=="htm"){$srcfile=$dir."/".$file;$dstfile=$dir2."/";echo"Copiar '$srcfile' a '$dstfile'... <br>";$cmd="cp $srcfile$dstfile";$eje1=exec($cmd,$output,$return_var);}}}
Otra opción para copiar los archivos sería la función copy(), pero al ejecutar el script marcaba error al ejecutarse, así que decidi usar la alternativa del exec().>
hace mucho que no posteo trucos y códigos de programación, pero creo que ya va siendo hora .
Bueno al grano, para los que manejamos mysql en alguna ocasión nos hemos preguntado ¿Cómo limpio la consola de mysql?. Un caute dice dale muchos enters. Pero investigando en los foros de mysql me encontré 2 formas de hacerlo:
Este 4trimestre de la maestría estoy tomando una clase en la que se ven autómatas, dando un googlaso por la red me encontré estos 2 ebooks.
El primer libro Autómatas y Lenguajes: Un enfoque de diseño fue diseñado por Ramon F. Brena Pinero, profesor en el Tecnológico de Monterrey, Campus Monterrey quein impartió clases relacionadas con Autómatas y lenguajes por mas de 10 años
El segundo es un clásico sobre los lenguajes formales, la teoría de autómatas y la complejidad computacional. Con más énfasis en las aplicaciones prácticas actuales, con un estilo más conciso y directo y numerosos ejercicios y ejemplos que le ayudan a confirmar la comprensión de los conceptos teóricos presentados.
Para los que no saben existe algo llamado swfobject que es un script que sirve para añadir de forma fácil y segura animaciones flash en una pagina y este script es el que uso yo.
Vamos al grano resulta que hoy abrí mi blog con el chafasplorer 7 y como no tenia el plugin de flash pues entonces lo instale pero al reiniciar, sopas ninguna animación flash se visualizaba.
El problema se presenta al actualizar el plugin de flash para chafasplorer 7 el swfobject ya no funciona bien. Gogleando por la red encontré la solución:
var so =new SWFObject("animacion.swf","sotester","743","133","8","#0000FF");
Cambiar por:
var so =new SWFObject("animacion.swf","sotester","743","133","false","#0000FF");
Como ven solo se cambia el parámetro de la vercion de flash por false.
Por favor ya dejen de usar chafasplorer para navegar, ya dejen eso navegador lento e inseguro y que además no cumple con los estandares web, mejor… get firefox
Otro cambio que hice fue en la parte en que se escribe el archivo el XML, ya que aun cambiando los permisos del archivo (mod 777) no se escribía el valor de contenido en el archivo, pero con el sig. código se soluciono.
if(is_writable($archivo)){// En nuestro ejemplo estamos abriendo $nombre_archivo en modo de adición.// El apuntador de archivo se encuentra al final del archivo, asi que// alli es donde ira $contenido cuando llamemos fwrite().if(!$gestor=fopen($archivo,'wb')){echo"No se puede abrir el archivo ($archivo)";exit;}// Escribir $contenido a nuestro arcivo abierto.if(fwrite($gestor,$contenido)===FALSE){echo"No se puede escribir al archivo ($archivo)";exit;}fclose($gestor);}
El resultado lo puedes ver en esta página y el código completo aquí
Hace unos post publique como utilizar flash + php, esta ocasión veremos como hacer conexión con una BD de mysql.
Empecemos por hacer una página php que contenga las instrucciones para hacer la conexión con la BD y funciones básicas como altas, bajas, búsqueda y modificaciones.
$DBhost="localhost";$DBuser="usuario_de_la_base";$DBpass="password_de_la_base";$DBName="nombre_de_la_base";// conectando al servidor MySQL$DBConn=mysql_connect($DBhost,$DBuser,$DBpass) or die("error en conexión: ".mysql_error());// selección de la basemysql_select_db($DBName,$DBConn) or die("error al seleccionar la base: ".mysql_error());
altas, bajas, etc.
switch($accion){case'regi':echo$nombre." ".$fon;$consulta="INSERT INTO `agenda` (`nombre`, `fon`) VALUES('$nombre','$fon');";$resultado=mysql_query($consulta)or die("error en la consulta".mysql_error());break;case'leer':$consulta="SELECT * FROM `agenda`;";$resultado=mysql_query($consulta)or die("error en la consulta".mysql_error());$nfilas=mysql_num_rows($resultado);echo"filas=".$nfilas;echo"®istros=";while($fila=mysql_fetch_row($resultado)){echo"<b>Nombre:</b> ".$fila[1].'<br />'."<b>Teléfono:</b> ".$fila[2].'<br<br /><br /><br />';}break;case'busca':if($crite=="byname"){$consulta="SELECT * FROM `agenda` WHERE `nombre`='$valor';";}if($crite=="byfon"){$consulta="SELECT * FROM `agenda` WHERE `fon`=$valor ;";}$resultado=mysql_query($consulta)or die("error en la consulta".mysql_error());echo"&buscar=";while($fila=mysql_fetch_row($resultado)){echo"<b>Nombre:</b> ".$fila[1].'<br />'."<b>Teléfono:</b> ".$fila[2].'<br<br />'}break;}
En esta código usaremos la sentencia switch para realizar las diferentes operaciones de la BD, los valores de la variable $accion se mandaran desde flash
En flash creamos un campo de texto dinámico en el cual cargaremos los registros de la base, para esto utilizaremos la instrucciones loadvars, load y onload para poner el valor de $accion=leer y así llamar a dicha función en la pagina php.
function leer(){
regis=newLoadVars;
regis.load(_global.server+"phpf/agenda.php?accion=leer");
regis.onLoad=function(){
registro.htmlText=this.registros;
}}
Donde regis es la variable que guarda el resultado de la acción leer de la pagina php, registro es el campo dinamico que mostrara los resultados y _global.server tiene el valor del host donde se ejecuta el script php.
Para insertar registros, creamos 2 campos tipo input, usamos la sentencia sendAndLoad la cual carga los valores contenidos en un objeto LoadVars (datos para este ejemplo) y los envía mediante la URl al servidor.
Donde datos.nombre = nom contiene el valor del primer campo tipo input, y datos.fon = fo el valor del segundo campo.
Teniendo estas dos funciones (leer e insertar) y con un poco de más de programación e imaginación podemos implementar las opciones de eliminación y búsqueda.
Posted on : 23-09-2007 | By : erufenix | In : Programación
3
Existen varias maneras de ecriptar password en un formulario, las más fácil es usar códigos de ecriptación ya definidos como : SHA-1, MD4 o MD5
En php existe una función md5() que cumple con esta tarea, pero el inconveniente es que lo hace en el lado del servidor, lo que significa que del cliente al servidor la clave viaja en forma plana.
Para solucionar esto esta su equivalente en java script con el cual podemos los valores de los campos de un formulario y mandarlo directamente en md5 del cliente al servidor.
<labelfor="pass">Texto aquí:</label><inputname="cmd5"type="text"size="20"id="cmd5"/><ahref="#"onclick="javascript:(alert(hex_md5(document.getElementById('cmd5').value)));">Valor en MD5</a>
Para usar la ecriptación en los formularios podemos hacerlo de dos formas, la primera como lo mencionan en la pagina del autor y la segunda es crear un campo oculto y usar el método onSubmit().
Donde el campo falso contiene el valor que se cifrara en md5 y el campo oculto es el valor que enviara como password
Posted on : 06-09-2007 | By : erufenix | In : PHP, Programación
1
Si tu eres desarrollador de aplicaciones en php y se te complica hacer la sección de identificación y logeo, phpsp es tu solución
Phpsp es una serie de scripts escritas en php que de manera fácil y sencilla crean un sistema de logeo e identificación para una aplicación php. Características
Seguridad fácil para las páginas
Crear diferentes grupos de usuarios cada con sus propios permisos
Posted on : 19-08-2007 | By : erufenix | In : PHP, Programación
0
Cuando escribo post muy largos en mi blog, no me gusta que estos ocupen una gran parte del blog; así que decidí investigar la manera de ocultar o mostrar parte del contenido.
Para word press hay muchos plugins que hacen esto, pero al probarlos no me gustaron ya que muchos de ellos recargan la pagina para mostrar el contenido restante de un post. Así que mejor decidí implementar algo por mi cuenta.
1. Empecemos por el css incluyendo el siguiente código.
El primer div indica el mensaje que se mostrara cuando el contenido este oculto, el segundo div muestra lo contrario y el tercer div es donde estará el contenido a ocultar. Donde ‘nombre’ lo cambiaremos por el identificador del div que vayamos a usar.