jueves, 29 de diciembre de 2016

Mostrar Errores en Php. GNU/LINUX

Hola,

Siguiendo el post anterior, luego de la instalación de Apache y realizando pruebas, me di cuenta que no mostraba mensaje de error en el navegador si es que tenia uno al momento de codificar.

A proposito genere errores en la sintaxis de Php y al momento de ingresar por el navegador no te muestra nada.


Se soluciona de la siguiente manera.
Nos dirigimos a la ubicación de archivo php.ini y modificamos Display errors de Off a On

Ingresamos a la dirección del archivo


 Nos permite abrir el archivo de configuración de Php.


 Buscamos display_errors que esta en Off, hay que cambiarlo a On
 


Detenemos e iniciamos el servicio para que se actualice los cambios que se han realizado.



Ahora si nos muestra los errores que cometemos.


Saludos!
 

Instalar Php en GNU/LINUX. Distro Fedora.

Hola,

He visto algunos comentarios en el cual no pueden instalar Php o iniciar el servicio de apache.

Primero debemos de tener actualizado nuestro sistema operativo, para eso utilizamos:

yum update

Recordar que debemos de realizar este comando en modo super usuario (su).

Estando logeados como super usuario, procedemos a instalar el servidor Apache, tecleamos:

yum install httpd


yum install php


Esperamos que termine de insalar todos los paquetes, para luego iniciar el servicio con el comando:

service httpd start



Para poder trabajar con Php debemos de tener una carpeta donde estará los archivos, desde donde ejecutara el servidor Apache.
Esa carpeta es /var/www/html
Pero no podemos acceder a ella porque esta protegida solo para el administrador del sistema, para acceder debemos de conceder esos permisos al usuario actual. Lo realizamos con el siguiente comando:

chown -R usuario:usuario /var/www/html


Ya podemos trabajar en esa carpeta y ejecutar nuestros script de php.

Para comprobar que todo salio bien podemos escribir en la barra de direcciones del navegador de tu preferencia: localhost.
 

 Realizamos una prueba.
 
 Y nos muestra:



Espero les sirva. Hasta una próxima oportunidad!





viernes, 23 de diciembre de 2016

Integridad Referencial - MariaDB y MySql

Hola,

Realizando una aplicación de control de almacén y ventas, me surgio la siguiente duda...
¿Que pasa si el cliente trata de borrar un dato desde la tabla "A" que esta tiene referencia con la tabla "B"?. Dicho de otro modo, por ejemplo tengo un cliente Pepito que compra 20 manzanas, se registra la venta y su id como cliente, y por cosas del destino (error de usuario) se elimina a Pepito de la lista de Clientes, si no se tiene cuidado, esto significaría que se elimina el id de Pepito de la venta o ventas ya realizadas anteriormente.

En estos casos y siempre se debe de tener en cuenta la integridad referencial.
Es decir indicar al crear la tabla que es lo que se debe de hacer cuando alguien va a eliminar o editar un dato de tablas referenciadas.

Esta es la sintaxis que encontramos en la web de Mysql:

[CONSTRAINT [symbol]] FOREIGN KEY
    [index_name] (index_col_name, ...)
    REFERENCES tbl_name (index_col_name,...)
    [ON DELETE reference_option]
    [ON UPDATE reference_option]

reference_option:
    RESTRICT | CASCADE | SET NULL | NO ACTION

Donde:
  • ON DELETE/UPDATE RESTRICT: Es la acción predeterminada, y no permite una eliminación si existe un registro asociado.
  • ON DELETE/UPDATE CASCADE: Si se especifica esta opción y una fila de la tabla padre se elimina, entonces también se elimina su clave foranea de la tabla hijo.
  • ON DELETE/UPDATE SET NULL: Las filas en la tabla hijo son actualizadas automáticamente colocando en las claves foraneas el valor Null.
  • ON DELETE/UPDATE NO ACTION:Realiza la misma acción que DELETE RESTRIC
  • ON DELETE/UPDATE SET DEFAULT: Actualmente no funciona en MySQL - se supone que pone el valor de la clave foránea al valor por omisión (DEFAULT) que se definió al momento de crear la tabla.
A continuación el script de ejemplo



 Y el script ejecutado en MariaDB


 Espero le sirva el post.