lunes, 25 de mayo de 2015

Proyecto

http://programacionwebcarlosbarraza.esy.es/Proyecto/Inicio.html

Descripción del proyecto


Nuestro proyecto consta de una pagina web en donde se da información sobre diferentes congresos de animación y videojuegos. En el se desarrollan diferentes actividades para el usuario, desde la descripción de nuestra pagina, la misión y visión de nuestro equipo de trabajo, calendario donde se muestran las diferentes actividades sobre los congresos que se desarrollan en este entorno y un pequeño formulario para recibir información o inscribirse a alguno de nuestros eventos.







ul#navigation {
    position: fixed;
    margin: 0px;
    padding: 0px;
    top: 10px;
    left: 0px;
    list-style: none;
    z-index:9999;
}
ul#navigation li {
    width: 100px;
}
ul#navigation li a {
    display: block;
    margin-left: -2px;
    width: 100px;
    height: 70px;    
    background-color:#CFCFCF;
    background-repeat:no-repeat;
    background-position:center center;
    border:1px solid #AFAFAF;
    -moz-border-radius:0px 10px 10px 0px;
    -webkit-border-bottom-right-radius: 10px;
    -webkit-border-top-right-radius: 10px;
    -khtml-border-bottom-right-radius: 10px;
    -khtml-border-top-right-radius: 10px;
    /*-moz-box-shadow: 0px 4px 3px #000;
    -webkit-box-shadow: 0px 4px 3px #000;
    */
    opacity: 0.6;
    filter:progid:DXImageTransform.Microsoft.Alpha(opacity=60);
}
ul#navigation .home a{
    background-image: url(../images/home.png);
}
ul#navigation .about a      {
    background-image: url(../images/id_card.png);
}
ul#navigation .search a      {
    background-image: url(../images/search.png);
}

ul#navigation .rssfeed a   {
    background-image: url(../images/rss.png);
}
ul#navigation .photos a     {
    background-image: url(../images/camera.png);
}
ul#navigation .contact a    {
    background-image: url(../images/mail.png);
}

Actividad #29















Actividad #28

¿Qué son los Servicios Web?

Existen múltiples definiciones sobre lo que son los Servicios Web, lo que muestra su complejidad a la hora de dar una adecuada definición que englobe todo lo que son e implican. Una posible sería hablar de ellos como un conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre sí con el objetivo de ofrecer unos servicios. Los proveedores ofrecen sus servicios como procedimientos remotos y los usuarios solicitan un servicio llamando a estos procedimientos a través de la Web.

¿Para qué sirven?

Estos servicios proporcionan mecanismos de comunicación estándares entre diferentes aplicaciones, que interactúan entre sí para presentar información dinámica al usuario. Para proporcionar interoperabilidad y extensibilidad entre estas aplicaciones, y que al mismo tiempo sea posible su combinación para realizar operaciones complejas, es necesaria una arquitectura de referencia estándar.

¿Cómo funcionan?

El siguiente gráfico muestra cómo interactúa un conjunto de Servicios Web:




Según el ejemplo del gráfico, un usuario (que juega el papel de cliente dentro de los Servicios Web), a través de una aplicación, solicita información sobre un viaje que desea realizar haciendo una petición a una agencia de viajes que ofrece sus servicios a través de Internet. La agencia de viajes ofrecerá a su cliente (usuario) la información requerida. Para proporcionar al cliente la información que necesita, esta agencia de viajes solicita a su vez información a otros recursos (otros Servicios Web) en relación con el hotel y la compañía aérea. La agencia de viajes obtendrá información de estos recursos, lo que la convierte a su vez en cliente de esos otros Servicios Web que le van a proporcionar la información solicitada sobre el hotel y la línea aérea. Por último, el usuario realizará el pago del viaje a través de la agencia de viajes que servirá de intermediario entre el usuario y el servicio Web que gestionará el pago.



Costos (sacados de la empresa UPRM)

Servicio Básico de Creación de Página Web
Costo: $500.00 (One-time fee)
(Incluye mantenimiento por 6 meses. Ver opciones de mantenimiento disponibles.)
Si deseas crear una página web para tu oficina, departamento, proyecto u organización el servicio básico es una opción ideal. Esta opción incluye:
- Hasta 25 páginas de contenido estático.
- Plantilla institucional con imágenes. Diseño de gráficos limitado.
- Selección de domain a su preferencia. Ejemplo: myoficina.uprm.edu.
- Una (1ea) cuenta de correo electrónico para su oficina @uprm.edu.
- Acceso a shell, SFTP, FTP y creación de htaccess.
- Formulario de contacto (vinculado a su correo electrónico).
- Cumple con las guías de diseño de la W3C, Section 508, Ley 229 de PR.
Servicio "Premium" de Creación de Página Web
Costo: $800.00 (One-time fee)
(Incluye mantenimiento por 12 meses. Ver opciones de mantenimiento disponibles)
Para sitios web de mayor tamaño el servicio "Premium" te provee un paquete económico pero con la flexibilidad que necesitas para crear tu sitio web. Esta opción incluye las mismas opciones del servicio básico con 12 meses de mantenimiento y en adición:
- No hay limite en el número páginas de contenido estático.
- Incluye "streaming" de audio y video.
- Prioridad en sus solicitudes de cambio y actualizaciones.
Servicio de Mantenimiento y Apoyo para sitios Web
Costo: $10.00 por mes*. $7.00 por mes cuando se paga por 12 meses.
(*Pagado por un termino mínimo de 6 meses.)
Los servicios de mantenimiento para sitios web te permiten contar con el apoyo del grupo de trabajo de CTI una vez tengas publicado tu sitio web. Con el servicio de mantenimiento tienes un personal disponible para solicitar cambios y hacer arreglos. De esta manera usted está tranquilo de que su sitio web se encuentra continuamente actualizado.
El servicio de mantenimiento no incluye creación de páginas nuevas o cambios que requieran modificar un número substancial del contenido publicado en un sitio Web. Si requiere crear páginas nuevas o regularmente requiere cambios mayores vea la opción de Servicio "Premium" de mantenimiento y apoyo para sitios Web o refiérase a la tabla de costos individuales por trabajos misceláneos.

Servicio "Premium" de Mantenimiento y Apoyo para sitios Web
Costo: $60.00 por mes*.
(*Pagado por un término mínimo de 6 meses.)
El servicio de mantenimiento "Premium" te provee el mismo nivel de tranquilidad que nuestro servicio de mantenimiento pero en adición esta opción te permite añadir nuevas páginas a tu sitio web y hacer modificaciones mayores.


Estándares y protocolos de seguridad e interoperabilidad

  •   Web Services Protocol Stack: Así se le denomina al conjunto de servicios y protocolos de los servicios Web.
  •   XML (Extensible Markup Language): Es el formato estándar para los datos que se vayan a intercambiar.
  •  SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote Procedure Call): Protocolos sobre los que se establece el intercambio.
  •  Otros protocolos: los datos en XML también pueden enviarse de una aplicación a otra mediante protocolos normales como HTTP (Hypertext Transfer Protocol), FTP (File Transfer Protocol), o SMTP (Simple Mail Transfer Protocol).
  • WSDL (Web Services Description Language): Es el lenguaje de la interfaz pública para los servicios Web. Es una descripción basada en XML de los requisitos funcionales necesarios para establecer una comunicación con los servicios Web.
  •  UDDI (Universal Description, Discovery and Integration): Protocolo para publicar la información de los servicios Web. Permite comprobar qué servicios web están disponibles.
  • WS-Security (Web Service Security): Protocolo de seguridad aceptado como estándar por OASIS (Organization for the Advancement of Structured Information Standards). Garantiza la autenticación de los actores y la confidencialidad de los mensajes enviados.

Ventajas de los servicios web

·         Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.
·         Los servicios Web fomentan los estándares y protocolos basados en texto, que hacen más fácil acceder a su contenido y entender su funcionamiento.
·         Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para proveer servicios integrados.
    

martes, 19 de mayo de 2015

Evaluacion unidad 5

http://programacionwebcarlosbarraza.esy.es/Encuesta/encuesta.html



php


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
</head>
<body>
  <h2>Encuesta - Software </h2>

<?php
  $H1 = $_POST['group1'];
  $H2 = $_POST['group2'];
  $H3 = $_POST['group3'];
  $H4 = $_POST['group4'];
  $H5 = $_POST['group5'];
  $H6 = $_POST['group6'];
  $H7 = $_POST['group7'];
$H8 = $_POST['group8'];
$H9 = $_POST['group9'];
$H10 = $_POST['group10'];
$H11= $_POST['group11'];
$H12 = $_POST['group12'];
$H13 = $_POST['group13'];
$H14 = $_POST['group14'];
$H15 = $_POST['group15'];
$H16 = $_POST['group16'];
$H17 = $_POST['group17'];
$H18 = $_POST['group18'];
$H19 = $_POST['group19'];
$H20 = $_POST['group20'];
  $H21 = $_POST['text_617897311_0'];
$H22 = $_POST['group22'];
$H23 = $_POST['group23'];
$H24 = $_POST['group24'];
  $H25 = $_POST['input_659279976_60_7614539732_0'];
  $H26 = $_POST['text_617897311_0'];
$H27 = $_POST['group27'];

$dbc = mysqli_connect('mysql.hostinger.com.ar', 'u360072057_encue', 'u360072057_alexa', 'alemiil0210') or die('Error connecting to MySQL server.');

  $query = "INSERT INTO encuesta(install, interface, freeze_crash, performing,documentation, support, shipping_time, improve, service, likely, email) VALUES (' $H1', ' $H2', '$H3', '$H4', '$H5','H6', '$H7', ' $H8', '$H9', '$H10', '$H11')";

  $result = mysqli_query($dbc, $query)
    or die('Error querying database.');

  mysqli_close($dbc);
echo ' ENCUESTA AGREGADA <br />';

?>

</body>
</html>



html





lunes, 11 de mayo de 2015

Actividad #26

  • Origen de PHP
PHP tal y como se conoce hoy en día es en realidad el sucesor de un producto llamado PHP/FI. Creado en 1994 por Rasmus Lerdorf, la primera encarnación de PHP era un conjunto simple de ficherosBINARIOS Common Gateway Interface (CGI) escritos en el lenguaje de programación C. Originalmente utilizado para rastrear visitas de su currículum online, llamó al conjunto de scripts "Personal Home Page Tools", más frecuentemente referenciado como "PHP Tools". Con el paso del tiempo se quiso más funcionalidad, y Rasmus reescribió PHP Tools, produciendo una implementación más grande y rica. Este nuevo modelo fue capaz de interaccionar con bases de datos, y mucho más, proporcionando un entorno de trabajo sobre cuyos usuarios podían desarrollar aplicaciones web dinámicas sencillas tales como libros de visitas. En junio de 1995, Rasmus » publicó el codigo fuente de PHP Tools, lo que permitió a los desarrolladores usarlo como considerasen apropiado. Esto también permitió -y animó- a los usuarios a proporcionar soluciones a los errores del código, y generalmente a mejorarlo.
En septiembre de ese mismo año, Rasmus amplió PHP y -por un corto periodo de tiempo- abandonó el nombre de PHP. Ahora, refiriéndose a las herramientas como FI (abreviatura de "Forms Interpreter"), la nueva implementación incluía algunas de las funciones básicas de PHP tal y como la conocemos hoy. Tenía variables como las de Perl, interpretación automática de variables de formulario y sintaxis incrustada HTML. La sintaxis por sí misma era similar a la de Perl, aunque mucho más limitada, simple y algo inconsistente. De hecho, para embeber el código en un fichero HTML, los desarrolladores tenían que usar comentarios de HTML. Aunque este método no era completamente bien recibido, FI continuó gozando de expansión y aceptación como una herramienta CGI --- pero todavía no completamente como lenguaje. Sin embargo, esto comenzó a cambiar al mes siguiente; en octubre de 1995 Rasmus publicó una versión nueva del código. Recordando el nombre PHP, ahora era llamado (resumidamente) "Personal Home Page Construction Kit," y fue la primera versión que presumía de ser, en aquel momento, considerada como una interfaz de scripts avanzada. El lenguaje fue deliberadamente diseñado para asemejarse a C en estructura, haciéndolo una adopción sencilla para desarrolladores familiarizados con C, Perl, y lenguajes similares. Habiendo sido así bastante limitado a sistemas UNIX y compatibles con POSIX, el potencial para una implementación de Windows NT estaba siendo explorada.
El código fue completamente rehecho de nuevo, y en abril de 1996, combinando los nombres de versiones anteriores, Rasmus introdujo PHP/FI. Esta implementación de segunda generación comenzó realmente a desarrollar PHP desde un conjunto de herramientas dentro de un lenguaje de programación de derecho propio. Incluía soporte interno para DBM, mSQL, y bases de datos Postgres95, cookies, soporte para funciones definidas por el usuario, y mucho más. Ese mes de junio, PHP/FI brindó una versión 2.0. Sin embargo, un interesante hecho sobre esto, es que sólo había una única versión completa de PHP 2.0. Cuando finalmente pasó de la versión beta en noviembre de 1997, el motor de análisis subyacente ya estaba siendo reescrito por completo.
Aunque vivió una corta vida de desarrollo, continuó gozando de un crecimiento de popularidad en el aún joven mundo del desarrollo. En 1997 y 1998, PHP/FI tenía un culto de varios miles de usuarios en todo el mundo. Una encuesta de Netcraft en mayo de 1998 indicó que cerca de 60,000 dominios reportaron que tenían cabeceras que contenían "PHP", indicando en efecto que el servidor host lo tenía instalado. Este número se correspondía con aproximadamente el 1% de todos los dominios de Internet del momento. A pesar de estas impresionantes cifras, la maduración de PHP/FI estaba condenada por limitaciones; mientras habían varios contribuidores menores, aún era desarrollado principalmente por un individuo.
  • Porque es mejor que otras alternativas
1.- La Comunidad PHP
PHP tiene una comunidad muy grande de desarrolladores, existen miles de lugares donde se pueden encontrar: documentación, tutoriales, ejemplos de código, foros. Si se tiene un problema con PHP puedes encontrar la respuesta en muchos sitios en donde los usuarios comparten el conocimiento adquirido en el proceso de desarrollo.
2. Aprender PHP es fácil
PHP es fácil de aprender comparado con otros lenguajes de programación. El lenguajes es semejante a C y Java pues la sintaxis primaria esta basada en Perl. Además si conoces Javascript o ActionScriptverás la semejanza entre estos lenguajes por ejemplo en sus estructuras de control. Otro punto es que PHP tiene librerías especializadas en determinados trabajos por lo cual solo necesitas conocer la sintaxis, aplicarla y lograrás grandes resultados.
3. Rendimiento
El rendimiento de PHP es muy bueno y verdaderamente eficiente, utilizando un servidor modesto puedes atender millones de peticiones al día. Además de ello si necesitas mejorar este rendimientoZend Technologies ha desarrollado versiones especiales para incrementar este rendimiento.
4. Bajo Costo
El precio para utilizar PHP es cero, PHP es gratuito y lo puedes descargar desde www.php.net. Incluso si contratas un hosting verás que sale mas barato uno con soporte PHP comparado con el que tiene soporte ASP o ASP.NET.
5. Es Open Source, lo puedes modificar
PHP es Open Source es decir que se tiene acceso al código fuente. Si deseas agregar o modificar algo para obtener un funcionamiento de acuerdo a tus necesidades puede hacerlo con total libertad. Esto a diferencia de las aplicaciones comerciales en las cuales solo queda esperar versiones mejoradas de la empresa desarrolladora. Este punto es importante también pues teniendo acceso al código miles de desarrolladores detectan bugs y van corrigiendo y mejorando PHP, logrando tener una aplicación muy segura y constantemente mejorada.
6. Librerías Incluidas
PHP fue diseñada para trabajar sobre la web por ello trae un conjunto muy amplio de funciones para ser utilizadas en diferentes tares relacionadas con la web. Se puede conectar con bases de datos, conectar a web services, parsear XML, enviar email, generar PDFs, generar imágenes, etc. Basadas en estas librerías existes clases implementadas para facilitar el trabajo de los desarrolladores. Otro punto es que hay desarrolladores que agregan librerías especializadas para extender las funcionalidades de PHP.
7. Portabilidad
PHP esta disponible para la mayoría de sistemas operativos existentes. Desde Unix, Linux, Microsoft Windows, MAC, entre otros. Una vez desarrollado tu aplicación PHP esta puede funcionar cualquiera de estos sistemas operativos sin necesidad de modificar el código.
8. Soporte para OOP
La versión 5 de PHP esta diseñada para soporte de características de programación orientada a objetos. Características como herencia, métodos y atributos públicos o privados, clases y métodos abstractos, constructores, interfaces y destructores. Si tienes conocimientos de C++ o Java estas características te serán muy familiares con una sintaxis muy similar.
9. Soporte para gran variedad de Bases de Datos
PHP tiene soporte para conectarse a una gran variedad de base de datos como: MySQL, PostgreSQL, mSQL, Oracle, dbm, FilePro, HyperWave, Informix, InterBase, Sybase entre otras. Las base de datos hacen que una aplicación sea mas robusta y con este soporte tu aplicación puede conectarse con facilidad a tu base de datos existente.
10. Soporte
Si lo que necesitas es soporte, ZendTECHNOLOGIES la empresa que patrocina PHP, ofrece versiones comerciales con todo el soporte que puedas necesitar.
  • como trabaja php con el servidor web
  • Variables, operadores y expresiones e identificadores de PHP

Tipos de datos

PHP soporta los siguientes tipos :
  • arreglo
  • números en punto flotante
  • entero
  • objeto
  • cadena
El tipo de una variable normalmente no lo indica el programador; en su lugar, lo decide PHP en tiempo de ejecución dependiendo del contexto en el que se utilice esa variable.
Si se quisiese obligar a que una variable se convierta a un tipo concreto, se podría forzar la variable o usar la función settype() para ello.
En PHP el identificador de una variable siempre comienza con un signo de dólar ( ).

Enteros

Los enteros se puede especificar usando una de las siguientes sintaxis:
$a = 1234; // número decimal
$a = -123; // un número negativo$a = 0123; // número octal (equivalente al 83 decimal)$a = 0x12; // número hexadecimal ( equivalente al 18 decimal )

Números en punto flotante

Los números en punto flotante ( "double" ) se pueden especificar utilizando cualquiera de las siguientes sintaxis:
$a = 1.234;
$a = 1.2e3;

Cadenas

Las cadenas de caracteres se pueden especificar usando uno de dos tipos de delimitadores.
Si la cadena está encerrada entre dobles comillas ( " ), las variables que estén dentro de la cadena serán expandidas ( sujetas a ciertas limitaciones de interpretación ). Como en C y en Perl, el carácter de barra invertida (" \ ") se puede usar para especificar caracteres especiales :
Caracteres protegidos
Secuencia
significado
\n
Nueva línea
\r
Retorno de carro
\t
Tabulación horizontal
\\
Barra invertida
\$
Signo del dólar
\"
Comillas dobles
\[0-7]{1,3}
La secuencia de caracteres que coincida con la expresión regular es un carácter en notación octal
\x[0-9A-Fa-f]{1,2}
La secuencia de caracteres que coincida con la expresión regular es un carácter en notación hexadecimal

Variables

En PHP las variables se representan como un signo de dólar seguido por el identificador de la variable. El nombre de la variable es sensible a minúsculas y mayúsculas.
$var = "Bob";
$Var = "Joe";echo "$var, $Var"; // produce la salida "Bob, Joe"
PHP4 ofrece otra forma de asignar valores a las variables : asignar por referencia. Esto significa que la nueva variable simplemente referencia ( en otras palabras, "se convierte en un alias de" o "apunta a" ) a la variable original. Los cambios a la nueva variable afectan a la original, y viceversa. Esto también significa que no se produce una copia de valores; por tanto, la asignación ocurre más rápidamente. De cualquier forma, cualquier incremento de velocidad se notará sólo en los ciclos críticos cuando se asignen grandes arreglos u objetos.

Operadores

PHP brinda un conjunto de operadores muy sencillos de utilizar al formar expresiones.Operadores Aritméticos
Ejemplo
Nombre
Resultado
$a + $b
Adición
Suma de $a y $b.
$a - $b
Substracción
Diferencia entre $a y $b.
$a * $b
Multiplicación
Producto de $a and $b.
$a / $b
División
Cociente de $a entre $b.
$a % $b
Módulo
Resto de $a dividido entre $b.

Operadores de Asignación

El operador básico de asignación es un signo igual " ". A primera vista se puede pensar que es el operador de comparación "igual que". Pero no, realmente significa que el operando de la izquierda toma el valor de la expresión a la derecha, ( esto es, " toma el valor de " ).
El valor de una expresión de asignación es el propio valor asignado.
Esto es, el valor de $a = 3 es 3. Esto permite hacer cosas importantes como
$a = ($b = 4) + 5;  // ahora $a es igual a 9, y $b vale 4.
Además del operador básico de asignación, existen los "operadores combinados" para todas las operaciones aritméticas y de cadenas que sean binarias. Este operador combinado permite, de una sola vez, usar una variable en una expresión y luego establecer el valor de esa variable al resultado de la expresión. Por ejemplo :
$a = 3;
$a += 5;       // Establece $a a 8, como si hubiésemos escrito: $a = $a + 5;$b = "Hola ";$b .= "Ahí!";  // Establece $b a "Hola Ahí!", igual que si hiciésemos $b = $b . "Ahí!";
Observe que la asignación realiza una nueva copia de la variable original ( asignación por valor ), por lo que cambios a la variable original no afectan a la copia. Esto puede tener interés si se requiere copiar algo como un arreglo con muchos elementos dentro de un ciclo que se repita muchas veces ( cada vez se realizará una nueva copia del arreglo ). PHP4 soporta asignación por referencia, usando la sintaxis $var = &$otravar;, pero esto no es posible en PHP3. Asignación por referencia quiere decir que ambas variables acabarán apuntando al mismo dato y que nada se copia realmente.


Operadores Bit a bit

Los operadores bit a bit permiten activar o desactivar bits individuales de un entero.
Ejemplo
Nombre
Resultado
$a & $b
Y
Se activan los bits que están activos tanto en $a como $b.
$a | $b
O
Se activan los bits que están activos en $a o que lo están en $b.
$a ^ $b
Xor ("o exclusiva")
Se activan los bits que están activos en $a o en $b pero no en ambos a la vez.
~ $a
No
Se activan los bits que no están activos en $a.
$a << $b
Desplazamiento a la izquierdaDesplaza los bits de $a, $b posiciones hacia la izquierda (por aritméticaBINARIA, cada posición desplazada equivale a multiplicar por dos el valor de $a)
$a >> $b
Desplazamiento a la derechaDesplaza los bits de $a, $b posiciones hacia la derecha (por aritmética binaria, cada posición desplazada equivale a dividir entre dos el valor de $a)

Operadores de Comparación

Los operadores de comparación, como su nombre lo indica, permiten comparar dos valores y establecer una relación entre éstos.
Ads by SalePlusAd Options
Ejemplo
Nombre
Resultado
$a == $b
Igualdad
Cierto si $a es igual a $b.
$a === $b
Identidad
Cierto si $a es igual a $b y si son del mismo tipo (sólo PHP4)
$a != $b
Desigualdad
Cierto si $a no es igual a $b.
$a < $b
Menor que
Cierto si $a es estrictamente menor que $b.
$a > $b
Mayor que
Cierto si $a es estrictamente mayor que $b.
$a <= $b
Menor o igual que
Cierto si $a es menor o igual que $b.
$a >= $b
Mayor o igual que
Cierto si $a es mayor o igual que $b.
Otro operador importante es el condicional o ternario representado por " ? : ", que funciona como en C y otros muchos lenguajes.
(expr1) ? (expr2) : (expr3);
La expresión toma el valor expr2 si expr1 se evalúa a cierto, y expr3 si expr1 se evalúa a falso.


Operadores de Incremento / Decremento

PHP soporta los operadores de pre decremento y post incremento al estilo de C.
Ejemplo
Nombre
Efecto
++$a
Preincremento
Incrementa $a en uno y después devuelve $a.
$a++
Postincremento
Devuelve $a y después incrementa $a en uno.
--$a
Predecremento
Decrementa $a en uno y después devuelve $a.
$a--
Postdecremento
Devuelve $a y después decrementa $a en uno.
Ejemplo :
<?php

echo "<h3>Postincremento</h3>";
$a = 5;echo "Debe ser 5: ".$a++."<br>\n";echo "Debe ser 6: ".$a."<br>\n"; echo "<h3>Preincremento</h3>";
$a = 5;echo "Debe ser 6: ".++$a."<br>\n";echo "Debe ser 6: ".$a."<br>\n";echo "<h3>Postdecremento</h3>";
$a = 5;
echo "Debe ser 5: ".$a--."<br>\n";echo "Debe ser 4: ".$a. "<br>\n";echo "<h3>Predecremento</h3>";
$a = 5;
echo "Debe ser 4: ".--$a. "<br>\n";echo "Debe ser 4: ".$a. "<br>\n";
?>
Operadores Lógicos
Ejemplo
Nombre
Resultado
$a and $b
Y
Cierto si tanto $a como $b son ciertos.
$a or $b
O
Cierto si $a o $b son ciertos.
$a xor $b
O exclusiva
Cierto si $a es cierto o $b es cierto, pero no ambos a la vez.
! $a
Negación
Cierto si $a no es cierto.
$a && $b
Y
Cierto si tanto $a como $b son ciertos.
$a || $b
O
Cierto si $a o $b son ciertos.
La razón de las dos variaciones de "y" y "o" es que operan con distinta precedencia


  • Tipos de datos en PHP
Un tipo de datos se define como un conjunto de valores y las operaciones permitidas en esos valores. Casi todos los lenguajes de programación incluyen explícitamente el concepto de tipo de datos, aunque lenguajes diferentes pueden usar terminología diferente.

Los tipos de datos comunes en lenguajes de programación incluyen números enteros, números en punto flotante, y caracteres, un lenguaje podría soportar muchos más.

En PHP el tipo de datos de una variable no está definido por el programador. PHP decide el tipo de datos de las variables después de interpretar la página web. El tipo de datos básicos incluidos en php son variables, que no son más que identificadores para la ubicación de memoria para almacenar datos.

Los tipos de datos en PHP son:

  • Sentencias de control en PHP (Verdadero o falso, IF, ?, Switch , While , do While etc) incluya ejemplos
1.- La toma de decisiones if-else:
Quizá la estructura de control más básica y la más utilizada sea if-else:
if (condicion) {
// instrucciones que hay que ejecutar si la condición es verdadera
} else {
// Instrucciones que hay que ejecutar si la condición es falsa
}
En castellano sería algo así:
Si (Tal cosa es cierta) {
//  Haz esto
} En caso contrario {
// Haz esto otro
}

Veamos un ejemplo real: En un formulario preguntaremos al usuario como se llama, pasaremos las variables a la página “saludos.php” . En saludos.php mostraremos un saludo diferente en función de si el usuario soy yo o es cualquier otro
Formulario
<html>
<head>
<title> Ejemplo básico de If </title>
</head>
<body>

<form action="saludos.php" method="get">
¿Quién eres?<br />
<input type="text" name="nombre" />

<input type="submit" name="reset" value=" Enviar " />
</form>
</body>
</html>
saludos.php
<html>
<head>
<title> Ejemplo básico de If </title>
</head>
<body>
<h1> Página de bienvenida</h1>
<?php // Empieza el código php
if ($nombre=="Coder") {  // Si el nombre es Coder
echo(" Hombre $nombre! Ya estás cotilleando por aquí otra vez!"); // saludo especial
}else {
echo("Hola, $nombre, gracias por visitarnos"); // saludo para los demás
}
?>
</body>
</html>

La cláusula else (la parte del if-else que indica lo que hay que hacer si la condición es falsa) es opcional. No es necesario ponerla. Por ejemplo puedo querer un script que sólo me salude a mi. En este caso, cambiaría saludos.php de la siguiente manera:

<html>
<head>
<title> Ejemplo básico de If </title>
</head>
<body>
<h1> Página de bienvenida</h1>
<?php // empieza el código php
if ($nombre=="Coder") { // Si el nombre es Coder
echo(" Hombre $nombre! Ya estás cotilleando por aquí otra vez!"); // Saludo para Coder
}
?>
</body>
</html>
NOTA: Cuidado con el operador ==, es importante recordar que hay que utilizar un doble signo igual. Si utilizas sólo “=”, estarás utilizando el operador de asignación, es decir estableciendo que $nombre es igual a Coder con lo que la condición siempre sería cierta Smile
Las condiciones pueden complicarse mucho más, supongamos que queremos dejarte pasar sólo sí además de llamarte Coder, te sabes la contraseña, que en nuestro caso es “foros”:
Formulario:
<html>
<head>
<title> Ejemplo básico de If </title>
</head>
<body>

<form action="saludos.php" method="get">
¿Quién eres?<br />
<input type="text" name="nombre" /><br />
¿Y tu Contraseña?<br />
<input type="text" name="pass" />

<input type="submit" name="reset" value=" Enviar " />
</form>
</body>
</html>
saludos.php
<html>
<head>
<title> Ejemplo básico de If </title>
</head>
<body>
<h1> Página de bienvenida</h1>
<?php // Empieza el código php
if ($nombre=="Coder" and $pass =="foros") {
// Si el nombre es Coder y la contraseña foros
echo(" Hombre $nombre! Ya estás cotilleando por aquí otra vez!"); // saludo especial
}else {
echo("ahhhhhhhhhhh como no te sabes el nombre y la contraseña, no puedes pasar"); // saludo para los demás
}
?>
</body>
</html>
Además tenemos la instrucción elseif, que como su nombre indica, es una combinación de if y else. Añade una nueva condición en el caso de que la primera fuera falsa y sólo ejecuta las instrucciones si esta nueva condición es verdadera. Es decir,
Veamos un ejemplo:
if ($a > $b) {
// Ejecuta esto si a es Mayor que b
echo("a es mayor que  b");

} elseif ($a == $b) {
// si a no es mayor que be, comprueba si a es igual a b
echo("a es igual que  b");
} else {
// si no se cumplen las anteriores condiciones ejecuta ésta
echo ("a es menor  que b");
}
2- Bucles: While
If else nos permitía decidir si queríamos ejecutar o no una instrucción en función de una condición, los bucles nos permiten utilizar una condición para determinar cuantas veces queremos ejecutar una instrucción.:
While (condicion) {

// Instrucciones a ejecutar una y otra
//vez mientras la condición sea cierta
}
El funcionamiento es muy parecido al del if-else, la diferencia estriba en que si la condición es cierta y se ejecuta la orden, la condición vuelve a comprobarse una y otra vez mientras siga siendo cierta. En cambio en el cambio del if-else sólo se comprueba la condición una vez, si es cierta se ejecuta la instrucción y se sigue con el programa.
Veamos un ejemplo:
$cantidad = 1;
while ($cantidad < 10) {
echo ("$cantidad ");
$cantidad++;
}
Esto traducido a castellano sería:
$cantidad = 1; $cantidad es igual a uno
while ($cantidad < 10) Mientras el valor de la variable $cantidad sea menor que 10
echo (“$cantidad “); Escribe el valor de cantidad
$cantidad++ (suma 1 al valor que tenga $cantidad, también podríamos haber escrito $cantidad = $cantidad +1)
Veamos como funciona el script paso a paso,
$Cantidad es igual a 1
1 es menor que 10
Escribo 1 en pantalla
$cantidad = 2 (1+1)
2 es menor que 10
Escribo 2 en pantalla
$cantidad = 3 (2+1)…
Si ejecutamos este script, en pantalla veríamos 1 2 3 4 5 6 7 8 9
3- Bucles: do While
Los bucles do while, son muy parecidos a los bucles while, sólo que comprobamos si la condición es cierta al final del bucle en lugar de al principio. Así nuestras instrucciones se ejecutan siempre al menos una vez, lo que no ocurre en las condiciones while si la condición es falsa.
$cantidad = 1;
do {
echo ($cantidad);
} while ($cantidad<1);
Traducido sería
$cantidad = 1
do ( // ejecuta
echo ($cantidad); escribe el valor de cantidad
while ($cantidad<1); mientras cantidad sea mayor que 1 -> la condición es falsa luego el programa sale del bucle, pero ha escrito una vez el valor de $cantidad. El resultado en pantalla sería 1
4- Bucles: for
Los bucles for funcionan exactamente igual que en C . Con una sola instrucción controlamos todo el bucle, así que para los vaguetes está muy bien.
for (valor inicial; condicion; ejecutar en cada blucle) {

// Instrucciones a ejecutar mientras la condición sea cierta
}
Ejemplo
for ($cantidad = 1; $cantidad <10; $i++) {
echo("$cantidad");
}
Traducido es igual a:
Cantidad es igual a 1, mientras cantidad sea menor que 10 escribe cantidad en pantalla y después súmale 1 al valor de cantidad. Es decir, es exactamente el mismo ejemplo que vimos en el bucle while pero de otra manera.
4- Swich/case
Nos permite ejecutar un bloque de código u otro dependiendo del valor de una variable. Veamos un ejemplo.
Primero para asignar un valor a la variable, vamos a hacernos un formulario:
<html>
<head>
<title> Ejemplo de switch </title>
</head>
<body>

<form action="switch.php" method="get">
¿Quién eres?<br />

<input type="radio" name="quien" value="cgus" /> cgus<br />
<input type="radio" name="quien" value="xela" /> xela<br />
<input type="radio" name="quien" value="adanedhel" /> adanedhel<br />
<input type="radio" name="quien" value="jorgito" /> jorgito<br />
<input type="submit" name="reset" value=" Enviar " />
</form>
</body>
</html>
Switch.php
<html>
<head>
<title>Ejemplo de Swich</title>
</head>

<?php
switch($quien) {
case "cgus": // Primera posibilidad

echo (" $quien es todo un leader ");
break;
case "adanedhel": // segunda posibilidad
echo ("$quien es un elfo");
break;
case "xela": // tercera posibilidad
echo ("$quien es normal");
break;
default: // Posiblidad si no es ninguna de las anteriores
echo ("$quien es un desconocido");
}
?>
</body>
</html>
Tenéis más información sobre las estructuras de control en el manual de php
Sintaxis alternativa
PHP ofrece una sintaxis alternativa para alguna de sus estructuras de control; a saber, if, while, for, y switch. Puede hace el código más legible en algunos casos, especialmente en las páginas multiuso que vamos a ver a continuación:
If con construcción alternativa
<?php if ($a==5): ?>
A es igual a 5
<?php endif; ?>
if con elseif y else en el formato alternativo:

if ($a == 5):
print "a es igual a 5";
print "...";
elseif ($a == 6):
print "a es igual a 6";
print "!!!";
else:
print 
“a no es ni 5 ni 6″;
endif;
While utilizando la construcción alternativa
$i = 1;
while ($i <= 10):
print $i;
$i++;
endwhile;
For con la construcción alternativa
for (expr1; expr2; expr3): sentencia; ...; endfor;
Páginas Multiuso
Páginas multiuso son aquellas que pueden mostrar un contenido completamente diferente dependiendo de alguna condición. De esta forma, podemos hacer varias cosas en un solo documento.
La estructura habitual de una página multiuso es:
<html>
<head>
<title> Página Multiusos </title>
</head>
<body>

<php?
If (condición) { ?>
<!-- HTML que se mostará si la condición es cierta -->
<?php }else{ ?>
<!-- html que se mostratará si la condición es falsa -->
<?php } ?>
</body>
</html>
O utilizando la sintaxis alternativa que acabamos de ver:
<html>
<head>
<title> Página Multiusos </title>
</head>
<body>
<php?
if (condición): ?>
<!-- HTML que se mostará si la condición es cierta -->
<?php else: ?>
<!-- html que se mostratará si la condición es falsa -->
<?php endif; ?>

</body>
</html>
Esto puede parecer un poco confuso. Pero es precisamente una de las características que están haciendo muy popular al PHP: su capacidad de pasar de php a html en cualquier momento y todas las veces que sea necesario.
  • Declaración de funciones
Sintaxis general para declarar una función en PHP
function nombre (parámetro1, parámetro2, …, parámetroN) {
                               instrucción1
                               instrucción2
                               .
                               .
                               .
                                instrucciónN
                }


Para llamar (hacer que se ejecute) la función usaremos esta sintaxis: nombre(par1, par2, par3, …, parN); donde par1, par2, par3, …, parN son los parámetros (información) que le pasamos a la función. Una función puede necesitar de ningún, uno o varios parámetros para ejecutarse.
Escribe ahora este código y guárdalo con un nombre de archivo como ejemplo1.php. A continuación, sube el fichero al servidor y visualiza el resultado.
<?php //EjemploFUNCIONES aprenderaprogramar.com
//Declaración deFUNCIONES
function mostrarTexto($texto) {
echo "<strong>El texto a mostrar es el siguiente: </strong>";
echo $texto;
}
//Fin de declaración de funciones
mostrarTexto("Me gusta mucho la web de aprenderaprogramar.com");
?>


La utilidad fundamental de lasFUNCIONES es no tener que repetir partes de código comunes, que sería necesario repetir varias veces. Esas partes de código comunes se agrupan enFUNCIONES y simplemente llamaremos a la función cada vez que necesitamos ejecutar ese código. De esta manera, evitamos la repetición que hace más largo y difícil de entender un programa o desarrollo web.
También podemos crear funciones que devuelvan datos (valores concretos). Estas funciones, que podríamos denominar “funciones en sentido estricto”, son aquellas que ejecutan un código y como punto final de dicho código incluyen una sentencia return seguida del resultado de la función. La sentencia return indica que cuando se alcanza se ha llegado al final de la función y se devuelve como resultado de la misma el contenido especificado a continuación del return. Después de un return puede devolverse una variable, un número, una cadena de texto, etc.
Por ejemplo return "No dispone de permisos" significa que la función devuelve esta cadena de texto. Otro ejemplo: return $calculo; indica que la función devuelve el contenido que se encuentre almacenado en la variable $calculo. Otro ejemplo: return "Lo sentimos ".$usuario." pero no dispone de permisos. Para solicitar información puede escribir a ".$emailAdministrador; haría que la función devuelva una cadena de texto donde intervienen diversas variables.
<?php // Ejemplo funciones aprenderaprogramar.com
function operaciones($n1, $n2, $operacion) {
$resultado = 0;
if($operacion == "Sumar") {
$resultado = $n1 + $n2;
}else if($operacion == "Restar") {
$resultado = $n1 - $n2;
}else if($operacion == "Multiplicar") {
$resultado = $n1 * $n2;
}
return $resultado; // Devolver el resultado
}
// Llamar a la función operaciones
$r = operaciones(5, 7, "Sumar");
echo $r . "<br>";
// O podemos imprimir directamente
echo operaciones(15, 8, "Restar");
?>



Fíjate que a diferencia de la función mostrarTexto, la función operaciones nos devuelve un valor concreto, de forma que se sustituye su invocación allí donde aparece por el valor que devuelve. Así, la instrucción echo operaciones(15, 8, "Restar"); equivale a lo que sería escribir echo <<aquí el valor devuelto por la función operaciones invocada con los parámetros 15, 8 y “Restar” >>, es decir, sería lo mismo que escribir echo (15-8); ó echo 7;
Además, fíjate que la función mostrarTexto requería un parámetro, mientras que la función operaciones requiere tres parámetros. Si invocas la función sin pasarle el número de parámetros adecuado obtendrás un error del tipo <<Warning: Missing argument 3 for operaciones()>>.
Por último, tener en cuenta que una función puede ser invocada sin parámetros.
<?php //Ejemplo funciones aprenderaprogramar.com
function mostrarTextoError {
echo "<strong>Se ha producido un error </strong>";
// Aquí pueden venir varias líneas de instrucciones
}
?>


Esta función carece de parámetros. Para invocarla escribiríamos mostrarTextoError(). Cada vez que realizáramos la invocación se ejecutaría el código dentro de la función. Esta función podemos decir que es “tipo procedimiento” porque no devuelve un resultado (no tiene sentencia return).
  • Arreglos
Se define a un arreglo como un grupo de elementos relacionados entre sí por medio de índices. Los arreglos pueden ser de una o más dimensiones, los de una dimensión, son llamados comúnmente "vectores".
A diferencia con el lenguaje C, en PHP, un vector puede tener elementos de distintos tipos.
Para hacer referencia a un elemento del vector, se utiliza un índice, que indica la dirección en donde se encuentra un determinado valor. El índice en un arreglo comienza siempre por cero. (Mas adelante se verá que el índice de un vector, no necesariamente debe ser un número entero, sino que también puede ser un texto).
Ejemplo Práctico 1:
                        Almacenar los nombres de los días de la semana en un vector y luego imprimirlos uno debajo de otro.
<Html>
<Title> Ejmeplo 1  </Title>
<Body>
<?PHP
  // Inicializacion del Vector
  $dia[0] = "Domingo";
  $dia[1] = "Lunes";
  $dia[2] = "Martes";
  $dia[3] = "Miércoles";
  $dia[4] = "Jueves";
  $dia[5] = "Viernes";
  $dia[6] = "Sábado";
  // Impresion del vector
  for($i=0; $i<7; $i++)
   {
    echo ($dia[$i] . "<Br>") ;
   }
 ?>
</Body>
</Html>
  • Conectividad  a bases de datos usando PHP
Una vez que tenemos creada la base de datos en nuestro servidor, el siguiente paso es conectarnos a la misma desde una página PHP. Para ello PHP nos proporciona una serie de instrucciones para acceder a bases de datos MySQL.
<!-- Manual de PHP de WebEstilo.com -->
<html>
<head>
   <title>Ejemplo de PHP</title>
</head>
<body>
<?php
function Conectarse()
{
   if (!($link=mysql_connect("localhost","usuario","Password")))
   {
      echo "Error conectando a la base de datos.";
      exit();
   }
   if (!mysql_select_db("base_datos",$link))
   {
      echo "Error seleccionando la base de datos.";
      exit();
   }
   return $link;
}

$link=Conectarse();
echo "Conexión con la base de datos conseguida.<br>";

mysql_close($link); //cierra la conexion
?>

</body>
</html> 

https://tomatoma.wordpress.com/manual-de-php/2-estructuras-de-control-if-for-for-each-while/
http://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=573:funciones-php-declaracion-y-llamadas-parametros-tipos-return-ejercicios-ejemplos-resueltos-cu00827b&catid=70:tutorial-basico-programador-web-php-desde-cero&Itemid=193
http://php.net/manual/es/language.types.array.php
http://www.tutorialesfacil.com.ar/php/arreglos.htm
http://www.webestilo.com/php/php07b.phtml