jueves, 21 de mayo de 2020

PHP

Publicado Por BartenSoft A las mayo 21, 2020 Comentarios



                                                                
 QUE ES PHP

PHP, acrónimo recursivo en inglés de PHP: Hypertext Preprocessor (preprocesador de hipertexto), es un lenguaje de programación de propósito general de código del lado del servidor originalmente diseñado para el preprocesado de texto plano en UTF-8. Posteriormente se aplicó al desarrollo web de contenido dinámico, dando un paso evolutivo en el concepto de aplicación en línea, por su carácter de servicio.

Su implementación en los documentos HTML era aparentemente muy sencilla. Hay que decir, que, PHP no genera HTML, sino que ofrece una salida de texto con codificación UTF-8 compatible con los documentos HTML. El programador puede dotar a la salida de los tag's propios del HTML y los exploradores más comunes para navegar por internet, reconocerán muy rápidamente el formato UTF-8 y lo adaptarán ofreciendo una salida entendible.

Fue uno de los primeros lenguajes de programación del lado del servidor que se podían incorporar directamente en un documento HTML en lugar de llamar a un archivo externo que procese los datos. El código es interpretado por un servidor web con un módulo de procesador de PHP que genera el texto plano en formato UTF-8, ampliamente reconocido por el estándar HTML, dando como resultado, en los exploradores, una salida al usuario perfectamente entendible.

PHP ha evolucionado por lo que ahora incluye también una interfaz de línea de comandos que puede ser usada en aplicaciones gráficas independientes. Puede ser usado en la mayoría de los servidores web al igual que en muchos sistemas operativos y plataformas sin ningún costo.

Fue creado originalmente por Rasmus Lerdorf en el año 1995. Actualmente el lenguaje sigue siendo desarrollado con nuevas funciones por el grupo PHP.2​ Este lenguaje forma parte del software libre publicado bajo la licencia PHPv3_01, una licencia Open Source validada por Open Source Initiative. La licencia de PHP es del estilo de licencias BSD, sin la condición de copyleft asociada con la Licencia Pública General de GNU.

DIFERENCIA ENTRE PAGINA ESTATICAS Y PAGINAS DINAMICAS


Recordemos una página web estática presentará:


1. Absoluta opacidad a los deseos o búsquedas del visitante a la página
2. El proceso de actualizacion de es lento, tedioso y escencialmente manual
3. El usuario no tiene ninguna posibilidad de seleccionar, ordenar o modificar los contenidos o el diseño de la página a su gusto
4. Para cambiar los contenidos de la página, es imprescindible acceder al servidor donde está alojada la página

Mientras que una página web dinámica:

1. Gran número de posibilidades en su diseño y desarrollo
2. Se puede alterar el diseño, contenidos o presentación de la página al gusto
3.El proceso de actualización es sumamente sencillo, sin necesidad de entrar en el servidor
4.Emplea un grán número de funcionalidades tales como bases de datos, foros, contenido dinámico, etc

ETIQUETAS PARA ABRIR Y CERRAR PHP 



 COMENTARIOS EN PHP

Hay dos tipos de comentarios que se puede agregar:

1. comentario de una sola línea es utilizado para las notas rápidas sobre el código complejo o para desactivar temporalmente una línea de código PHP. Es necesario añadir // o # antes del código.

Ejemplo:


?
1    //Mi comentario
2   #define('TABLE_HEADING_WRITABLE', 'Writable');

2. comentario de líneas multiples es utilizado para comentar los bloques de código o escribir comentarios de multiples líneas. Es necesario añadir /* antes y */ después del código.

Ejemplo:

?
1 /*$Id$
2 osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
4 Copyright (c) 2010 osCommerce
5 Released under the GNU General Public License
6 */

 VARIABLES EN PHP





Ejemplo de un programa PHP





Características


1. Orientado al desarrollo de aplicaciones web dinámicas con acceso a información almacenada en una base de datos.
2. Es considerado un lenguaje fácil de aprender, ya que en su desarrollo se simplificaron distintas especificaciones, como es el caso de la definición de las variables primitivas, ejemplo que se hace evidente en el uso de php arrays.
3. El código fuente escrito en PHP es invisible al navegador web y al cliente, ya que es el servidor el que se encarga de ejecutar el código y enviar su resultado HTML al navegador.
4.Capacidad de conexión con la mayoría de los motores de base de datos que se utilizan en la actualidad, destaca su conectividad con MySQL y PostgreSQL.
5. Capacidad de expandir su potencial utilizando módulos (llamados extensiones).
6. Posee una amplia documentación en su sitio web oficial, entre la cual se destaca que todas las funciones del sistema están explicadas y ejemplificadas en un único archivo de ayuda.
7. Es libre, por lo que se presenta como una alternativa de fácil acceso para todos.
8Permite aplicar técnicas de programación orientada a objetos.
9No requiere definición de tipos de variables aunque sus variables se pueden evaluar también por el tipo que estén manejando en tiempo de ejecución
10Tiene manejo de excepciones (desde PHP5)
11Si bien PHP no obliga a quien lo usa a seguir una determinada metodología a la hora de programar, aun haciéndolo, el programador puede aplicar en su trabajo cualquier técnica de programación o de desarrollo que le permita escribir código ordenado, estructurado y manejable. Un ejemplo de esto son los desarrollos que en PHP se han hecho del patrón de diseño Modelo Vista Controlador (MVC), que permiten separar el tratamiento y acceso a los datos, la lógica de control y la interfaz de usuario en tres componentes independientes.
12Debido a su flexibilidad ha tenido una gran acogida como lenguaje base para las aplicaciones WEB de manejo de contenido, y es su uso principal.

Inconvenientes

1. Como es un lenguaje que se interpreta en ejecución, para ciertos usos puede resultar un inconveniente que el código fuente no pueda ser ocultado. La ofuscación es una técnica que puede dificultar la lectura del código pero no necesariamente impide que el código sea examinado.
2. Debido a que es un lenguaje interpretado, un script en PHP suele funcionar considerablemente más lento que su equivalente en un lenguaje de bajo nivel, sin embargo este inconveniente se puede minimizar con técnicas de caché tanto en archivos como en memoria.
3En las versiones previas a la 7, las variables no son tipificadas, lo cual dificulta a los diferentes IDEs ofrecer asistencias para el tipificado del código, aunque esto no es realmente un inconveniente del lenguaje en sí. Esto es solventado por algunos IDEs añadiendo un comentario con el tipo a la declaración de la variable.

XAMPP, LAMP, WAMP, MAMP, UwAmp


La LAMP comprende PHP (aquí con Squid).

XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor Web Apache y los intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. El programa está liberado bajo la licencia GNU y actúa como un servidor Web libre, fácil de usar y capaz de interpretar páginas dinámicas. Actualmente XAMPP está disponible para Microsoft Windows, GNU/Linux, Solaris, y MacOS X.
Es un software "liviano" que se puede utilizar en cualquier PC. No necesita muchos recursos.
LAMP presenta una funcionalidad parecida a XAMPP, pero enfocada en Linux, WAMP lo hace enfocado en Windows, y MAMP para MacOS X. UwAmp es muy idéntico a WAMP y se destaca en que se puede ejecutar desde una memoria USB.



Ejercicio 1





Ejercicio 2





Ejercicio 3



 Tutoriales de PHP



https://www.tutorialesprogramacionya.com/phpya/

https://desarrolloweb.com/home/php

https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=70

https://tutorialesenpdf.com/php/

https://www.pildorasinformaticas.es/course/php-mysql/



Que es un CRUD

En informática, CRUD es el acrónimo de "Crear, Leer, Actualizar y Borrar" (del original en inglés: Create, Read, Update and Delete), que se usa para referirse a las funciones básicas en bases de datos o la capa de persistencia en un software.

En algunos lugares, se utilizan las siglas ABM para lo mismo ("Alta, Baja y Modificación"), obviando la operación de "obtener"; el acrónimo ABC para "Altas, Bajas y Cambios"; ABML siendo la última letra (L) de "listar, listado o lectura"; ABMC siendo la 'C' de "Consulta"; o bien CLAB que sería la traducción literal del acrónimo ("Crear, Leer, Actualizar y Borrar") también se llega a usar el acrónimo ABCC ("Altas, Bajas, Cambios y Consultas").

También es usado el ABCDEF: "Agregar, Buscar, Cambiar, Desplegar (listar), Eliminar, Fichar (Ficha, cédula o Reporte de un registro)".

En programación, crear, leer, actualizar y borrar (con el acrónimo CRUD) son las cuatro funciones básicas de la persistencia de Bases de Datos. Términos alternativos son usados a veces cuando se definen las cuatro funciones básicas de CRUD, como “recuperar” en vez de “leer”, “modificar” en vez de “actualizar” o “destruir” en vez de “borrar”. CRUD se usa también a veces para describir convenciones de interfaz de usuario que facilita la vista, búsqueda y modificación de la información; a menudo se usa en programación de formularios (forms) e informes (reports). El término fue popularizado por primera vez por James Martin en su libro del año 1980 Managing the Data-base Enviroment. El acrónimo puede extenderse a CRUDL para cubrir el listado de gran cantidad de datos que conllevan una complejidad tal como paginación cuando los registros de datos son demasiado grandes para alojarse fácilmente en memoria.


Código para insertar registro en una base de datos con PHP

Opción 1 – Método MySQLi

En primer lugar, debes establecer una conexión con una base de datos tomando como referencia nuestro tutorial anterior. Una vez hecho esto, podemos proceder con la consulta SQL INSERT. Aquí hay un código de ejemplo completo con la conexión básica y los métodos de inserción:




Entonces, la primera parte del código (líneas 3 – 18) tiene como objetivo la conexión a la base de datos. No vamos a analizar esta parte de nuevo, pero si quieres saber qué significa cada línea del código, mira nuestra guía anterior sobre cómo conectarse a una base de datos.

Comencemos con la línea número 19:






Esta es la línea más importante de nuestro código, ya que hace lo que queremos aprender en este tutorial: inserta datos en MySQL. INSERT INTO es una declaración que agrega datos a la tabla de la base de datos especificada. En nuestro ejemplo, estamos agregando datos a la tabla Students.

Si continuamos, entre los corchetes, tenemos columnas de tabla específicas a las que queremos agregar los valores: (name, last name, email). Los datos se agregarán en el orden especificado. Si escribiéramos (email, last name, name), los valores serían agregados en un orden diferente.

Entonces la siguiente parte es la declaración de VALUES. Aquí especificamos nuestros valores para las columnas previamente especificadas. De esta forma, cada columna representa un valor específico. Por ejemplo, en nuestro caso sería así: name = Thom, lastname = Vial, email = thom.v@some.com.

Otra cosa que vale la pena mencionar es que acabamos de ejecutar una consulta SQL usando código PHP, las consultas SQL deben establecerse entre comillas. En nuestro ejemplo, todo lo que está entre comillas y después de $sql = es una consulta SQL.

La siguiente parte del código (líneas 20 – 22) verifica si nuestra consulta fue exitosa:




Simplemente muestra un mensaje de éxito si la consulta que ejecutamos fue exitosa.Y la parte final (líneas 22 – 24) muestra un mensaje diferente en caso de que nuestra consulta no fuera exitosa:





Opción 2 – Método PHP Data Object (PDO)

Al igual que en el ejemplo anterior, primero necesitamos una conexión a la base de datos lo cual se realiza creando un nuevo objeto PDO; el tutorial anterior te mostrará cómo hacerlo. Como la conexión a la base de datos MySQL es un objeto PDO, debes usar varios “métodos” PDO (cualquier función que sea parte de cualquier objeto) para preparar y ejecutar consultas. Los métodos de los objetos se llaman así:




PDO te permite “preparar” el código SQL antes de que se ejecute. La consulta SQL se evalúa y se “corrige” antes de ejecutarse. Un ataque de inyección SQL simplificado podría hacerse simplemente escribiendo código SQL en un campo de un formulario. Por ejemplo:





Como hay un código SQL sintácticamente correcto, el punto y coma hace que DROP DATABASE user_table sea una nueva consulta SQL, y tu tabla de usuario se borra. Las declaraciones preparadas no permiten los caracteres “y; para finalizar la consulta original y la instrucción maliciosa DROP DATABASE nunca se ejecutará.

Para usar declaraciones preparadas, debes escribir una nueva variable que llame al método prepare() del objeto de la base de datos.

En el código correcto:



En las líneas 28, 29 y 30, usamos el método bindParam() del objeto de la base de datos. También está el método bindValue() que es muy diferente.

 bindParam() – Este método evalúa los datos cuando se alcanza el método execute(). La primera vez que el script llega a un método execute(), ve que $first_Name corresponde a “Thom”, vincula ese valor y ejecuta la consulta. Cuando el script llega al segundo método execute(), ve que $first_Name ahora corresponde a “John”, vincula ese valor y ejecuta nuevamente la consulta con los nuevos valores. Lo que es importante recordar es que definimos la consulta una vez y la reutilizamos con diferentes datos en diferentes puntos del script.

bindValue() – Este método evalúa los datos tan pronto como se llega a bindValue(). Como el valor de $first_Name se definió como “Thom” cuando se llegó a bindValue(), este se usará cada vez que se llame a un método execute() para $my_Insert_Statement.

Observa que reutilizamos la variable $first_Name y le damos un nuevo valor la segunda vez. Si revisas tu base de datos después de ejecutar este script, tienes los dos nombres definidos, a pesar de que la variable $first_Name equivale a “John” al final del script. Recuerda que PHP evalúa un script completo antes de ejecutarlo.

Si actualizas el script para reemplazar bindParam con bindValue, insertarás en MySQL “Thom Vial” dos veces en la base de datos y John Smith será ignorado.



Código para eliminar un registro en una base de datos con PHP


Ejemplo #01 eliminación de registro con instrucción “DELETE”
Veamos ahora un ejemplo real de la mencionada consulta.




Aquí veremos nuestra interfaz HTML con los registros extraídos de la base de datos.



Mostramos una breve conexión con MySQL y PHP
Para la conexión nos basaremos en una función llamado db_query.





DOCUMENTO : FORMULARIO PHP GUARDAR UN REGISTRO


<!DOCTYPE html>
<html>
<head>
<title>Formulario PHP</title>


<link href="https://fonts.googleapis.com/css?family=Bebas+Neue&display=swap" rel="stylesheet">
<style type="text/css">
* {
padding: 0px;
margin: 0px;
}
#header {
background: #24242A;
height: 70px;
width: 1920px;
box-shadow: 2px 6px 5px 0px rgba(0,0,0,0.75)
}
.header_title {
float: left;
color: white;
font-family: 'Bebas Neue', cursive;
padding-left: 20px;
padding-top: 15px;
margin: auto;
}
.header_title_2 {
float: right;
color: white;
font-family: 'Bebas Neue', cursive;
padding-right: 20px;
padding-top: 15px;
margin: auto;
}
#formulario {
background: #24242A;
height: 400px;
width: 400px;
margin: auto;
margin-top: 100px;
padding: auto;
color: white;
font-family: 'Bebas Neue', cursive;
font-size: 19px;
/*border: 3px solid black;
border-radius: 10px;*/
box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);
}
footer {
height: 70px;
width: 1910px;
margin-top: 292px;
background: #24252A;
}

</style>
</head>
<body>
<center>
<header>
<div id="header">


<h1 class="header_title">FORMULARIO PHP</h1>
<h1 class="header_title_2">BRIAN MATHIAS FLOREZ</h1>
</div>
</header>
</head>
<body bgcolor="orange">
<br></br>
<form method="post" action="guardadatos.php?>">
<br><center>
<blockquote>

<font size"9">DIGITE LOS DATOS DEL USUARIO</font><br><br><br><br>
<label>Ingrese su Nombre: </label>
<input type="text" name="Nombre" required><br><br>
<label>Ingrese su Cedula: </label>
<input type="text" name="Cedula" required><br><br>
<label>Ingrese su correo: </label>
<input type="text" name="Mail" required><br><br>
<label>Ingrese su Genero: </label>
<input type="radio" name="Genero" required value="M">Masculino
<input type="radio" name="Genero" required value="F">Femenino<br><br><br><br>
<input type="submit" value="Guardar">
<input type="reset" value="Limpiar"></center>
</form>
</body>
</html>


DOCUMENTO GUARDA DATOS.PHP


<!DOCTYPE HTML PUBLIC "- // W3C // DTD HTML 4.01 Transitional // ES">
<html>
<head>
<meta http-equiv = "content-type" content = "text / html; charset = utf-8 ">
<meta name =" generator "content =" Editor de PSPad, www.pspad.com ">
<title> </title>
</head>
<body>
<?php
$conexion = mysqli_connect("localhost","root","root","sena") or die ("Problemas de conecxion");
mysqli_query($conexion,"INSERT INTO usuarios (Nombre, Cedula, Mail, Genero) values ('$_POST[Nombre]','$_POST[Cedula]','$_POST[Mail]','$_POST[Genero]')")
or die("problemas en el select".mysqli_error($conexion));
mysqli_close ($conexion);
echo "El usuario fue registrado.";
echo "<br>";
echo "<br>";
echo "Nombre de usuario: ", $_POST['Nombre'];
echo "<br>";
echo "<br>";
echo "Cedula: ", $_POST['Cedula'];
echo "<br>";
echo "<br>";
echo "Correo electrónico: ", $_POST['Mail'];
echo "<br>";
echo "<br>";
echo "Genero: ", $_POST['Genero'];
?>
</body>
</html>


CONSULTAR DATOS



DOCUMENTO BUSCADATOS.PHP


<!DOCTYPE HTML PUBLIC "- // W3C // DTD HTML 4.01 Transitional // ES">
<html>
<head>
<title>Formulario PHP</title>
<link href="https://fonts.googleapis.com/css?family=Bebas+Neue&display=swap" rel="stylesheet">
<style type="text/css">
* {
padding: 0px;
margin: 0px;
}
#header {
background: #24242A;
height: 70px;
width: 1920px;
box-shadow: 2px 6px 5px 0px rgba(0,0,0,0.75);
}
.header_title {
float: left;
color: white;
font-family: 'Bebas Neue', cursive;
padding-left: 20px;
padding-top: 15px;
margin: auto;
}
.header_title_2 {
float: right;
color: white;
font-family: 'Bebas Neue', cursive;
padding-right: 20px;
padding-top: 15px;
margin: auto;
}
#formulario {
background: #24242A;
height: 400px;
width: 400px;
margin: auto;
margin-top: 100px;
padding: auto;
color: white;
font-family: 'Bebas Neue', cursive;
font-size: 19px;
/*border: 3px solid black;
border-radius: 10px;*/
box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);
}
footer {
height: 70px;
width: 1910px;
margin-top: 292px;
background: #24252A;
}
</style>


</head>
<body>
<center>

<header>
<div id="header">
<h1 class="header_title">Buscar Datos PHP</h1>
<h1 class="header_title_2">Educate con BartenSoft</h1>
</div>
</header>
</head>
<body bgcolor="orange">
<br></br>
<meta http-equiv = "content-type" content = "text / html; charset = utf-8 ">
<meta name =" generator "content =" Editor de PSPad, www.pspad.com ">
<title>Buscar</title>

</head>
<body>
<font size="6">BUSCAR DATOS DE USUARIO</font><br><br>
<form method="post" action="consultarinfo.php">
<br>
<label>Ingrese la Cedula: &nbsp; </label>
<input type="text" name="DatosEliminar"><br><br>
<input type="submit" value="BUSCAR">
</form>
</body>
</html>



DOCUMENTO NUEVO: CONSULTAR INFO

<!DOCTYPE HTML PUBLIC "- // W3C // DTD HTML 4.01 Transitional // ES">
<html>
<head>
<meta http-equiv = "content-type" content = "text / html; charset = utf-8 ">
<meta name =" generator "content =" Editor de PSPad, www.pspad.com ">
<title> </title>
</head>
<body>

<?php


$conexion = mysqli_connect("localhost","root","root","sena") or
die("Problemas con la conexión");
$registros = mysqli_query($conexion, "select *
from Usuarios where Cedula='$_POST[DatosEliminar]'") or die("Problemas en el select:" . mysqli_error($conexion));
if ($reg = mysqli_fetch_array($registros)) {
echo "Nombre: " .$reg['Nombre']."<br>";
echo "Cedula: " .$reg['Cedula']."<br>";
echo "Mail: " .$reg['Mail']."<br>";
echo "Genero: " .$reg['Genero']."<br>";
}
else
{
echo "No existe un alumno con ese Cedula.";
}
mysqli_close($conexion);
?>
</body>
</html>



0 comentarios:

Publicar un comentario