[Powered by Google Translate] [PHP Desarrollo Web]
[Tommy MacWilliam]
[Este es CS50.] [CS50.TV]
>> En este video, vamos a aprender sobre el uso de PHP para el desarrollo web.
PHP es un lenguaje de script que puede utilizarse para implementar
sitios web en un servidor web.
Un servidor Web es esencialmente una máquina dedicada a proporcionar el contenido
que se puede acceder a través de Internet.
Cuando se desplaza a una página web, como Facebook.com / home.php
el código en el archivo llamado home.php que vive en un servidor web Facebook en algún lugar
se ejecutará en ese servidor.
Esta probabilidad de código que generará alguna salida
que a su vez ser enviado desde el servidor
a su navegador web.
Vamos a utilizar el aparato CS50 como un servidor web.
El equipo probablemente no será tan poderosa como las máquinas
en un centro de datos de Facebook, pero usted no tendrá ningún problema para usarlo para el desarrollo web.
>> Cuando navegamos a una URL como http://localhost/hola.php
configuramos el aparato a través de una aplicación llamada el servidor Apache HTTP
para buscar un archivo llamado hello.php interior de casa / jharvard / vhosts / localhosts / html por defecto.
Si existe ese archivo entonces Apache usará el intérprete PHP
para ejecutar el código PHP en hello.php.
Si ese archivo no existe, entonces Apache arrojará un error que no se encuentra
o un error 404, lo que probablemente has visto mientras navega por la Web.
>> Echemos un vistazo a hello.php.
Podemos ver aquí que hello.php genera una línea de señal de salida.
Cuando nos quedamos hello.php en la línea de comandos a través de php hello.php
que la producción fue impreso a la terminal.
Ahora, cuando se accede a este archivo a través de una URL en el navegador web
su salida será enviada al navegador web,
así que dirigirse a la dirección URL, http://localhost/hola.php,
podemos ver la salida en nuestro navegador web.
>> Vamos a tratar de añadir otro printf en nuestro programa hola mundo.
Está bien, vamos a la cabeza de vuelta al navegador web y ver lo que tenemos.
Interesante.
En vez de imprimir otra línea en su propia línea, ya que habría visto
en el terminal, parece que quedó aplastada en la misma línea
como el otro printf, así que tal vez las nuevas líneas no funcionan en PHP.
No del todo.
Recuerde que HTML se suele utilizar para crear páginas web
que se pueden mostrar por los navegadores web.
No sólo es la cadena hola de php HTML no válido,
pero recordemos que no podemos utilizar el carácter \ n en HTML
para crear un salto de línea.
En lugar de simplemente dar salida a la salida HTML válida una cadena de let.
Mediante el uso de etiquetas de párrafo, cada una de nuestras llamadas printf
se mostrará en su propia línea,
así que ahora cuando vamos a la que apunta el URL de valid.php
http://localhost/valid.php
vemos el resultado que estamos buscando.
>> Ahora bien, si consideramos que la fuente de esta página
podemos ver que ahora estamos viendo HTML válido,
que hemos creado a partir de PHP.
Poner todo nuestro HTML dentro de las llamadas printf
está, por supuesto, va a ser realmente molesto.
Por suerte podemos mezclar fácilmente HTML y PHP
en el mismo. archivo php.
Recuerde, todo nuestro código PHP debe ser encerrado dentro de <? Php
y>.
Todo lo que no está incluido dentro de estos delimitadores
simplemente se envía como salida al navegador
en lugar de ser ejecutado.
Eso significa que podemos hacer algo como esto.
Simplemente podemos escribir HTML dentro de nuestra. Archivo php
y luego insertar PHP bloques donde nos gustaría algo de código php a ejecutar.
Aquí definimos algunas variables en la parte superior del archivo,
y más tarde les imprimimos interior de nuestro HTML.
Ahora bien, si nos visita esta dirección URL, http://localhost/mixed.php
podemos ver nuestra PHP evaluado dentro de nuestro HTML.
>> Ahora echemos un vistazo a cómo podemos pasar datos
entre nuestras diversas páginas PHP.
En vez de decir
simplemente podemos decir <? = la variable que nos gustaría imprimir, o una,
y>.
Echemos un vistazo a cómo podemos pasar datos
entre nuestras diversas páginas PHP.
Una forma de hacerlo es para codificar información en el URL de la página.
Al navegar por la Web, te habrás dado cuenta de que algunas de las URL
contener una? seguido de una cadena que contiene los símbolos de unión y signos de igual.
Esta parte de la URL que se conoce como la cadena de consulta,
y esto le permite pasar con eficacia los argumentos a su script PHP.
La cadena de consulta consta de pares de claves de valor, al igual que una tabla hash.
Un signo igual separa una clave y su valor correspondiente
mientras que los símbolos de unión se separan pares.
Una URL que parece http://localhost/get.php?foo=bar&baz=qux
tiene 2 pares de valores clave en la cadena de consulta.
El foo clave se asigna a la barra de valor,
y el baz clave se asigna a la qux valor.
Podemos acceder fácilmente a estos pares de valores clave usando una variable especial en PHP,
$ _GET.
$ _GET Es un arreglo asociativo
que se rellena automáticamente con los datos de la cadena de consulta.
Eso significa que, dado este URL $ _GET ["foo"]
será igual a la barra de cadena.
>> Echemos un vistazo a get.php para ver $ _GET en acción.
Aquí estamos usando una función llamada var_dump,
que cuando se les da una matriz u otra variable
lo imprimirá para nosotros.
Ahora bien, si nosotros simplemente accedemos http://localhost/get.php
entonces vamos a ver una matriz vacía porque no hemos proporcionado una cadena de consulta.
Si lo hacemos proporcionar una cadena de consulta a través de http://localhost/get.php?foo=bar&baz=qux
entonces podemos ver que la variable $ _GET contendrá
pares de valores clave de la cadena de consulta.
Pero lo que si no queremos poner nuestros datos dentro de la URL de una página?
Para grandes cantidades de datos, esto puede dar lugar a algunas URLs bastante feos
que van a hacer nuestra web mirada brillante cojo.
En vez de eso podemos poner la cadena de consulta en el cuerpo
de las peticiones HTTP en lugar de la dirección URL de la solicitud.
Entonces podemos utilizar variables de PHP $ _POST
para acceder a los pares de valores clave.
Una forma de hacer esto es a través de un formulario HTML.
Aquí tenemos un formulario HTML simple.
Nótese aquí que el atributo de método de esta forma es posterior.
Esto le indica al navegador que poner pares de valores clave del formulario
en el cuerpo de la solicitud en lugar de la URL.
>> Si tuviéramos que utilizar el valor de ir a este atributo
entonces pares de valores clave del formulario tendrían lugar entrar en la cadena de consulta,
para que pudiéramos acceder a ellos a través de $ _GET nuevo.
El atributo action del formulario indica al navegador dónde enviar los datos.
Aquí nuestros 2 elementos de entrada tienen atributos de nombre.
El valor de los atributos de nombre servirá como claves en nuestros datos,
y los valores de las entradas de texto se convertirán en los valores de las claves.
Ahora echemos un vistazo a post.php,
el archivo que esta forma presenta a.
Al igual que hicimos antes, simplemente estamos mostrando el contenido de la variable $ _POST.
>> Vamos a navegar al formulario con http://localhost/form.php.
Ahora, cuando nos sometemos forma podemos ver que los datos de form.php
se pasa a post.php sin anexar una cadena de consulta a la URL.
Ahora que hemos visto 2 maneras diferentes de pasar datos entre páginas PHP,
GET y POST.
En nuestros ejemplos, hemos utilizado 2 tipos de peticiones HTTP.
Como es de esperar, se utilizó una petición get cuando poblamos
Se utilizó $ _GET desde la URL, y una solicitud posterior
cuando nos poblamos $ _POST.
En el diseño de sus aplicaciones web es una buena regla de oro para utilizar peticiones GET
cuando su aplicación sólo leerá los datos y las solicitudes de correos
cuando su aplicación va a escribir datos.
Por ejemplo, una consulta de búsqueda leerá los datos de su aplicación,
por lo que una petición get tiene sentido.
Por otro lado, su aplicación va a escribir datos a través de algo así como un formulario de registro,
por lo que una solicitud posterior tendría más sentido, y eso es una visión general de algunas de las técnicas
que va a utilizar en CS50 para crear sitios web utilizando PHP.
>> Mi nombre es Tommy, y esto es CS50.
[CS50.TV]