Friday, July 27, 2012

Cuaderno IV de Apuntes de PHP:  Manipulación de Archivos (Escritura,  Lectura y Eliminación)

Funciones útiles para escribir en un archivo

La siguiente imagen muestra el formulario con los campos de entrada de texto, el primero se llama "titulo" y el segundo es un cuadro de Area de Texto llamado "textoDelUsuario"


El archivo de procesamiento de datos se llama curso17_guardarText.php. Aquí utilizaremos la variable $escribir que hace las veces de buffer, almacenando  el nombre y el tipo de archivo que estamos creando,  En este caso se llama "NombreDelArchivo.txt", 

<?php
//Prepara el archivo para escribir 
$escribir = fopen("NombreDelArchivo.txt","a") or die ("Problemas al crear archivo"); 
//Dando forma al archivo
fwrite($escribir,"Título: ".$_GET['titulo']); 
fwrite($escribir,"\n..................................................................................................\n\n"); 
fwrite($escribir, $_GET['textoDelUsuario']);
fwrite($escribir,"\n____________________________________________________________\n\n");
//Cierra el archivo
fclose($escribir);
echo "Datos guardados en el archivo: \"NombreDelArchivo.txt\" ";
?>
fopen(NombreDelArchivo.txt, "a")= es una función utilizada para crear y manipular  archivos, el segundo parámetro  a crea un nuevo archivo si este no existe, en el caso contrario, que el archivo con   ese nombre exista agrega datos al final.
die("Mensaje que quieras escribir en caso de error")= termina la aplicación si se genera algún error, podemos escribir un mensaje de salida.
fwrite(NombreDelArchivo.txt, "Cadena a escribir")= Agrega al archivo de escritura la cadena de caracteres que tengamos en el segundo parámetro. 
fclose(NombreDelArchivo.txt) = Cierra el archivo 

Funciones útiles para Leer un archivo

Usaremos la variable $leer para almacenar el nombre del archivo de lectura.

<?php 
$leer=fopen("NombreDelArchivo.txt","r") or die("No se pudo abrir el archivo NombreDelArchivo.txt");
    // El while se ejecuta hasta que lee la última línea ubicada al  final del archivo de texto (Mientras no sea la última línea)
while (!feof($leer)){
$linea = fgets($leer);
$saltoDeLinea = nl2br($linea);
echo $saltoDeLinea;

?>

feof("NombreDelArchivo.txt") indica cuando el puntero alcanza el final del archivo de texto
fgets("NombreDelArchivo.txt") Obtiene la línea de donde se encuentra el puntero
nl2br($cadenaDeCaracteres) Convierte los /n a <br/> que son los saltos de línea de HTML y PHP

Funciones útiles para Borrar un archivo


Este primer archivo es útil para mostrar el cuadro que nos ayuda a seleccionar el archivo que deseamos borrar.
<html>
<head><title>Borrar Archivos</title></head> 

<body>
<form action="curso19_borraArchivos.php", mode="post", name="frm">
<input type="file" name="archivo" /><br/>
<input type="submit" value="Eliminar"/>
</form>
</body>
</html>

Este es el archivo de entrega de datos "curso19_borraArchivos.php" donde se ejecuta el borrado del archivo.
<?php
        $nombreArchivo = $_GET['archivo'];
        unlink($nombreArchivo);
        echo "El archivo ". $nombreArchivo." ha sido borrado con exito";
?>

unlink(NombreDelArchivo.txt)= es una función utilizada para borrar archivos.


Los archivos de Texto de todas las lecciones los puedes descargar Aquí. .
Lista con todos los cuadernos de Apuntes de PHP Aquí.

Mas información en  Manual de php en Castellano: Función fopen()

Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.




Monday, July 23, 2012

Cuaderno III de Apuntes de PHP: Ejercicios resueltos con Formularios 

Envío de datos entre Formularios (Tutorial 14)

El video de implementación lo encuentras en  Tutorial PHP - 14. Formularios. Creamos un formulario básico y lo he llamado curso14_form.php


En este caso hemos utilizado el método post para comunicar los dos archivos internamente, el segundo archivo llamado curso14_procesar.php. recibe los datos de entrada y los imprime en pantalla.

<?php
// recibimos los valores del campo de texto con el método $_POST 
$nombre = $_POST['nombre'];
$apellido = $_POST['apellido'];

echo $nombre." ". $apellido;
?>

El parámetro action soporta también   method= "get" el cual envía los datos a través de la URL
<?php
// recibimos los valores del campo de texto con el método $_GET
$nombre = $_GET['nombre'];
$apellido = $_GET['apellido'];

echo $nombre." ".$apellido;
?>

Ahora la URL se ve así:

Diseño de una calculadora (Tutorial 15 y 16)

Este ejercicio es un repaso de todo lo aprendido anteriormente, el video de Como crear una calculadora en PHP, nos enseña a generar un formulario de inicio con tres campos de texto en blanco (c1,c2 y c3) el cual solicita al usuario los datos a operar y un menú desplegable llamado lista para seleccionar la operación, el resultado será mostrado en una segunda página llamada curso15_procesar.php,el método de envío de datos es "post". 


En segundo archivo ejecutamos las


<?php
// recibimos los valores c1, c2 y c3 de los campos de texto y lista del menú desplegable con el método $_POST
$c1 = $_POST['c1'];
$c2 = $_POST['c2'];
$c3 = $_POST['c3'];
$operacion = $_POST['lista'];
// en este caso utilicé funciones para repasar un poco
function fsuma($c1,$c2,$c3){
$c4= $c1+$c2+$c3;
return $c4;
};
function fresta($c1,$c2,$c3){
$c4= $c1-$c2-$c3;
return $c4;
};
function fmultiplica($c1,$c2,$c3){
$c4= $c1*$c2*$c3;
return $c4;
}
function fdivide($c1,$c2,$c4){
$c4= $c1/$c2/$c3;
return $c4;
}
// Este if se utiliza para evitar que el usuario inserte campos en blanco
if (isset($c1) && !empty($c1) &&
isset($c2) && !empty($c2) &&
isset($c3) && !empty($c3) )
{ // Aquí  procesamos en realidad los datos
switch($operacion){
case suma: $c4=fsuma($c1,$c2,$c3);
break;
case resta:$c4=fresta($c1,$c2,$c3);
break;
case multiplicación:$c4= fmultiplica($c1,$c2,$c3);
break;
case división:$c4= fdivide($c1,$c2,$c3);
default: $c4=0;
}
echo "La  &nbsp;".$operacion." es igual a ".$c4;
} else echo "Debes llenar todos los campos.";
?>

Los archivos de Texto de todas las lecciones los puedes descargar Aquí.
Lista con todos los cuadernos de Apuntes de PHP Aquí.

Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.

Sunday, July 22, 2012

Cuaderno II de Apuntes de PHP: Control de Flujo

if

<?php
if(8 != 7 && 1 < 5 ){
echo "esto es verdad";
} elseif (5 == 5){
echo "la segunda condición es verdad";
}else {
echo "esto No es verdad";
}
?>
Salida en Pantalla: esto No es verdad


while

Permite repetir un conjunto de instrucciones mientras una condición se esté cumpliendo, recordar incrementar la variable de control para evitar caer en un blucle infinito.
<?php
$aumento=5;
while ($aumento <10){
echo $aumento . ", ";
$aumento++;
}
?>
Salida en pantalla: 5, 6, 7, 8, 9,


do while

Permite realizar el conjunto de instrucciones antes de verificar la condición, cuando la condición se cumple sale del ciclo. si la condición nunca se cumple, igual ejecuta el bloque una sola vez.
<?php
$cuenta=10;
do {
echo $cuenta . ", ";
while ($cuenta <9);
?>
Salida en pantalla: 10, 


for

Aunque la mona se vista de seda, mona se queda, este es un while pero mas bonito. 
<?php
for ($cuenta=1; $cuenta<5; $cuenta++){
echo $cuenta . ", ";
;
?>
Salida en pantalla: 1, 2, 3, 4, 


foreach

Recorre todos los elementos de un vector . 

<?php
$vector1 = array ("ele1","ele2","ele3");
foreach ($vector1 as $eleX){
echo $eleX . ", ";
} ;
echo "<br>";
$dir = array("Nombre"=>"Nena","Tel"=> 123456789);
foreach ($dir as $tags => $datos){
echo $tags. ": ". $datos. "<br>";
} ;
?>

Salida en pantalla: el1, el2, el3, 
                                 Nombre: Nena
                                 Tel: 123456789


switch- case

Cuando una variable toma  valores predefinidos y específicos, podemos usar esta forma:

<?php
$var = 10;
switch ($var){
   case 1: echo "uno";
   break;
   case 10: echo "diez";
   break;
   case hola: echo "hola";
   break;
   default: echo "es otro valor";
}
?>

Salida en pantalla: diez 





Funciones


<?php

function fun($p1,$p2,$p3){

$suma = $p1 + $p2 + $p3;

$mult  = $suma * 2;

return $mult;

};

echo fun(5,2,10);

?>
Salida en pantalla: 34                
Lista con todos los cuadernos de Apuntes de PHP Aquí.
Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.
 

Cuaderno I de Apuntes de PHP : Introducción


En esta entrada he escrito mis apuntes del Curso PHP Código Facilito, para empezar solo necesitaras instalar un servidor Web y configurarlo.  Ahora podemos escribir  nuestro código PHP y HTML en un editor de uso libre por lo tanto necesitamos Descargar Notepath++  e instalarlo.

Todos los archivos que queremos publicar se guardan en:  C://AppServ/www. Alli podemos crear una carpeta con el nombre que queramos, por ejemplo miProyectoPHP. El archivo con nuestro codigo lo debemos crear con una extención .php y  por ejemplo miCodigo.php. Entonces el camino de acceso al archivo de código sería: C://AppServ/www/miProyectoPHP/miCodigo.php


Para probar como funciona el código que hemos escrito, abrimos de nuevo el navegador y en la barra de busqueda escribimos: localhost:8000/miProyectoPHP/miCodigo.php

Notas

El código está limitado por la etiqueta de inicio      <?php y la etquita de cierre ?>.
Imprimir en pantalla:                                             echo "Texto entre comillas";
                                                                          print "Texto entre comillas";
Salto de Línea                                                      <br/>
Espacio en blanco                                                &nbsp;
Comentario corto                                                 // Este es un comentario corto
Comentario largo                                                 /* Este comentario puede ocupar muchas líneas*/

Variables (Tutorial 3)

Gurdan datos de diferentes típos, ya sean numericos, booleanos, cadenas de caracteres, etc. Se declaran por medio del simbolo $ seguido por el nombre o identificador de la variable, que no puede tener simbolos ni espacios. por Ejemplo:

<?php
$edad= 20;  //Variable numérica
$nombre= "Ana"; //Variable caddena de caracteres
$registro = true;         // Variable Booleana(0 o nada >Falso y 1>verdadero)
echo "Me llamo ";
echo $nombre; 
echo " tengo ";
echo $edad;
echo " años, y mi registro es: ";
echo $registro;
?>
Salida en navegador: Me llamo Ana tengo 20 años, y mi registro es: 1 

Vectores o Arreglos (Tutorial 5)

La posición de los objetos de los Vectores predefinidos se cuenta desde 0

<?php
$vectorNumeros = array(1,2,3,4,5);
$vectorNombres = array("Victoria","Diana", "Maria", "Pepa", "Luisa");

echo "El primer valor de mi arreglo es está en la posición 0: ";
echo $vectorNumeros[0];
echo $vectorNombres[0];
?> 
Salida en navegador: El primer valor de mi arreglo es está en la posición 0: 1 Victoria


Los Vectores asociativos o personalizados requieren que insertemos una etiqueta para ubicar cada elemento del vector. En el siguiente ejemplo se han creado 2 vectores, uno de números (con etiquetas L1,L2,...) y otro de nombres(con etiquetas p1,p2,...).
<?php
$vectorAsociativoNumeros = array("L1" => 11, "L2" => 12,"L3" => 13, "L4" => 14,"L5" => 15);
$vectorAsociativoNombres = array("p1" =>"Victor","p2" =>"Diego","p3" => "Mario","p4" =>"Pepe", "p5" =>"Luis");
echo "<br/>El último elemento de mi arreglo asociativo es: ";
echo $vectorAsociativoNumeros[L5];
echo "<br/>El último elementos de mi arreglo asociativo es: ";
echo $vectorAsociativoNombres[p5];
?> 


Las etiquetas y el tipo de datos dentro de los vectores, puede ser creado según mas te acomode.

<?php
$Mezcla = array("Nombre" =>"Tatiana","Edad" => 21,"Direccion" => "Casa 1","ID" => 1111, "Cuenta" =>true);
echo "<br/>Nombre: ";
echo $Mezcla[Nombre];
echo "<br/>Edad: ";
echo $Mezcla[Edad];
echo "<br/>Activación: ";
echo $Mezcla[Cuenta];
?>
Salida en navegador:
            Nombre: Tatiana
           Edad: 21
           Activación: 1


Operadores (Tutorial 6)

  • Asignación: Solo hay uno y es "=", el cual permite asignar un valor a una variable
  • Aritméticos: +, - , *, /, %, ...
  • Comparación: Igual(==). idéntico (===), Diferente (!= ó <>),   No idéntico (!==), <,<=, >,>=
  • Incremento o decremento: ++, --. Si se escriben el operador antes de la variable   ++$variable el valor se incrementa antes de ser mostrada, si se escriben después   $variable++ , primero se opera y después se incrementa.
  • Lógicos: y (&& o and), o (|| o or), o exclusivo (xor)
  • Concatenación: Une dos cadenas por medio de un punto "." o con .= para signar datos a una variable ya existente,  es muy útil a la hora de enviar correos
                   <?php
                   $usuario = array("Nombre" =>"Tatiana","Edad" => 21,"Direccion" => "Casa 1","ID" => 1111, "Cuenta" =>true);
                   $texto = "Mi nombre es " . $usuario[Nombre] .  " y tengo ". $usuario[Edad] . " años";
                   echo $texto;
                  $texto .= ", ahora agregué esta línea";
                  echo "<br />" . $texto;
                   ?>

                  Salida en Pantalla
                              Mi nombre es Tatiana y tengo 21 años
                              Mi nombre es Tatiana y tengo 21 años, ahora agregué esta línea

  • Control de Errores: @
               <?php
        echo "Ejemplo que NO omite errores";
        error();     // Produce un error porque no hemos definido la función error()
               ?>
               Salida en Pantalla: Ejemplo que NO omite errores
                                                Fatal error: Call to undefined function error() in    
                                                C:\AppServ\www\CodigoFacilitoPHP\curso06_errores.php on line 3
               <?php
        echo "Ejemplo con control de errores";
        @ error();     // No muestra en pantalla que hay un  error porque no hemos definido la función    
                  ?>         
               Salida en Pantalla: Ejemplo con control de errores    
                              
Continuación "Cuaderno II de apuntes de PHP: Controles de Flujo"
Lista con todos los cuadernos de Apuntes de PHP Aquí.

Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.

Tuesday, July 17, 2012

Instala tu propio Servidor Web en solo 6 pasos Instala tu propio Servidor Web en solo 6 pasos

Para empezar solo necesitaras instalar un servidor Web y configurarlo. No te asustes es fácil,  Usaremos el AppServ 2.6.0 que posee las siguientes herramientas:

  • Apache 2.2.8
  • PHP 6.0.0-dev
  • MySQL 6.0.4-alpha
  • phpMyAdmin-2.10.3

Ademas en este Video de instalación te explican paso a paso como hacerlo, lo hacen con una versión anterior pero no cambia nada. Primero Descarga AppServ 2.6.0 ,  ejecuta el archivo y sigue las instrucciones.

Click en Next, Acepta las condiciones de la licencia, y ubica la carpeta donde vas a instalar tu servidor Webverifica que tu disco tenga al menos 77.5MB de espacio disponible . 

En la siguiente ventana todas las herramientas deben estar seleccionadas

Ahora escribimos el nombre del Servidor, en este caso es localhost,  tu correo de administrador y el puerto debe ser 8000

Escribe el Password de root de MySQL, selecciona la casilla de Old Password Support e instala.

El servidor arranca cuando termina la instalación

Ahora abres tu  navegador favorito (Chrome, firefox,...)  y en la barra de búsqueda escribes
localhost:8000 cuando oprimes enter te debe aparecer la siguiente información:



Esto indica que el Servidor Web está bien instalado. Para empezar a escribir código PHP y HTML, te recomiendo Descargar Notepath++ .  Ahora te invito a que revises mi Cuaderno I de Apuntes de PHP: Introducción..
Lista con todos los cuadernos de Apuntes de PHP Aquí.

Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.