
Modelo de estructura para intruducir código PHP en HTML:
<html>
<head>
<title>hola mundo</title>
</head>
<body>
<h1>incluir código PHP en html</h1>
<p><? acá va el código PHP ?></p>
</body>
</html>
Variables:
$hola = "hola mundo";
Ejemplo "Hola Mundo" usando variable:
<? $hola = "hola mundo"; ?>
<html>
<head>
<title><? echo $hola; ?></title>
</head>
<body>
<h1>incluir código PHP en html</h1>
<p><? echo $hola; ?></p>
</body>
</html>
Lugar para colocar los archivos de tu página Web en XAMPP:
c:\xampp\htdocs\
Nota: La página se llama así: http://localhost/index.php
Ejemplos de declaración de variables:
<?
$miVariable1 = "hola, esta es una cadena de texto";
$miVariable2 = 30;
$miVariable3 = array( 'hola', 'este', 'es', 'un', 'array' );
$miVariable4 = true;
?>
Crear una variable global:
<?
global $miGlobal = "esta es una variable global";
?>
Constante:
<?
define('HOLA', 'Hola Mundo');
?>
Ejemplo "Hola Mundo" usando constante:
<? define('HOLA', 'Hola mundo'); ?>
<html>
<head>
<title><? echo HOLA; ?></title>
</head>
<body>
<h1>incluir código PHP en html</h1>
<p><? echo HOLA; ?></p>
</body>
</html>
Estructura de control de flujo if:
<?
if ( $fecha == '04.02.2008' ) {
echo "Hoy es 4 de Febrero de 2008";
}
?>
Estructura de control de flujo if...else:
<?
if ( $usuario != false ) {
echo "Bienvenido de nuevo $usuario";
} else {
echo "Hola, si aún no estas registrado puedes hacerlo ...";
}
?>
Estructura de control de flujo if...elseif:
<?
if ( $hoy == 'Lunes' ) {
echo 'Hoy es Lunes, tenemos carne para almorzar';
} elseif ( $hoy == 'Martes' ) {
echo 'Hoy es Martes, tenemos fideos para almorzar';
} elseif ( $hoy == 'Miercoles' ) {
echo 'Hoy es Miercoles, tenemos estofado para almorzar';
} elseif ( $hoy == 'Jueves' ) {
echo 'Hoy es Jueves, tenemos pizza para almorzar';
} elseif ( $hoy == 'Viernes'{
echo 'Hoy es Viernes, tenemos tarta para almorzar';
} elseif ( $hoy == 'Sabado'{
echo 'Hoy es Sabado, tenemos ravioles para almorzar';
} else ( $hoy == 'Domingo'{
echo 'Hoy es Domingo, no almorzamos :(';
}
?>
Estructura de control de flujo switch:
<?
switch($hoy) {
case 'Lunes':
echo 'Hoy es Lunes, tenemos carne para almorzar';
break;
case 'Martes':
echo 'Hoy es Martes, tenemos fideos para almorzar';
break;
case 'Miercoles':
echo 'Hoy es Miercoles, tenemos estofado para almorzar';
break;
case 'Jueves':
echo 'Hoy es Jueves, tenemos pizza para almorzar';
break;
case 'Viernes':
echo 'Hoy es Viernes, tenemos tarta para almorzar';
break;
case 'Sabado':
echo 'Hoy es Sabado, tenemos ravioles para almorzar';
break;
case default:
echo 'Hoy es Domingo, no almorzamos :(';
break;
}?>
Ejemplo de formulario con estructura de control de flujo:
<html>
<body>
<h2>Deja tu opinión</h2>
<form action="" method="post">
<? If ($usuario == true) {?>
<p> Sesion iniciada como <a href="">just</a><a href="">Cerrar sesión.</p>
<? } else { ?>
<label> <input type="text" name="nombre"/>Nombre real (obligatorio)</label>
<label> <input type="text" name="email"/>Email (no será publicado) (obligatorio)</label>
<label> <input type="text" name="web"/>Sito Web</label>
<? } ?>
<!–-- TEXTAREA PARA EL CUERPO DEL COMENTARIO -->
<textarea name="cuerpo_comentario"></textarea>
<input type="submit" value="ENVIAR COMENTARIO" />
</form>
</body>
</html>
Operadores aritméticos:
+ Adición de valores.
- Resta de valores.
* Multiplicacion de valores.
/ Division de valores.
% Resto de una division.
++ Incrementa en una unidad.
-- Resta en una unidad.
Operadores de asignación:
= Asigna al primer miembro el segundo. Es decir $a = 4, le asigna el valor 4 a $a.
+= Asigna al primer miembro la suma del primer miembro con el segundo.
$a =4; $b = 5; $b += $a, ahora $b pasa a valer 9.
-= Asigna al primer miembro la resta del primer miembro con el segundo.
*= Asigna al primer miembro la multiplicacion del primer miembro con el segundo.
/= Asigna al primer miembro la division del primer miembro con el segundo.
%= Asigna al primer miembro el resto de la division del primer miembro dividido el segundo.
.= Concatena el primer miembro con el segundo y se lo asigna al primero.
Es decir $a = ‘Hola ‘; $b = ‘Mundo’. $a .= $b; ahora $a = ‘Hola Mundo’;
Operadores de comparación:
== Comprueba si dos valores son iguales, por ejemplo if ($a == $b) si $b es igual $a, el condicional
devuelve TRUE y continua ejecutando el script.
!= Comprueba si dos valores son distintos.
> Comprueba si el valor del primer miembro es mayor al segundo, por ejemplo if ( $a > 5), va a
devolver TRUE para todos aquellos valores de $a mayor a 5.
< Comprueba si el valor del primer miembro es menor al segundo.
>= Comprueba si el valor del primer miembro es mayor o igual al segundo.
<= Comprueba si el valor del primer miembro es menor o igual al segundo.
Operadores lógicos:
! Operacion de negativa, por ejemplo dentro de un condicional se puede realizar todo tipo de operaciones y funciones, una que veremos mas adelante es una funcion propia de php que devuelve TRUE o FALSE dependiendo si la variable esta vacia, entonces si nosotros preguntamos if (!empty($a)) va a devolver si $a = 5, TRUE, ya que empty($a) devuelve FALSE, pero !empty($a) seria como preguntar Si $a NO esta vacia.
and Comparador Y. Dentro de un condicional es necesario que ambas condiciones se cumplan es decir if ( $a == 4 AND $b == 5 ) continua con el script.
or Comparador O. Dentro de un condicional es necesario que se cumpla una de las dos condicione, es decir if ( $a == 4 OR $b == 5 ) con que $a = 4 o $b = 5 el script va a continuar su ejecucion.
xor Va a devolver verdadero si al menos una de las dos condiciones es verdadera pero no ambas.
&& Es igual que el and.
|| Es igual que el or.
Estructura while:
Sintaxis:
<code>
<?
while ( condicion ) {
[instrucciones]
}
?>
</code>
Ejemplo:
<code>
<?
$c = 1;
while ( $c < 11) {
echo "$c <br>";
$c++;
}
?>
</code>
Estructura do while:
Sintaxis:
<code>
<?
do {
intrucciones
} while (condición)
?>
</code>
Estructura for:
Sintaxis:
<?
for( expresión 1; expresión 2; expresión 3 ) {
[instrucciones]
}
?>
Sintaxis alternativa:
<?
for ( expresión 1; expresión 2; expresión 3 ):
[instrucciones]
endfor;
?>
Ejemplo:
<?
for ($c = 1; $c < 11; $c++) {
echo "$c <br />";
}
?>
Estructura foreach:
Sintaxis:
<?
foreach ( expresión1 as expresión2 ) {
[instrucciones]
}
?>
Ejemplo 1:
<?
// definimos el arreglo con los días de la semana
$semana = array( 'lunes','martes','miércoles',jueves','viernes','sábado','domingo' );
// mostrarnos el mensaje inicial
echo "Los días de la semana son:<br />";
// comienza el bucle
foreach ( $semana as $dia ) {
echo "$dia <br />";
}
?>
Ejemplo 2:
<?
$noticia = array(
'titulo' => 'Php Clase 5 - Bucles',
'cuerpo' => 'Acá va el contenido de la clase 5 de php, mucho texto, mucho mucho',
'autor' => 'Justi'
);
?>
<?
foreach ( $noticia as $valor ) {
echo "$valor<br />";
}
?>
Ejemplo 3:
<?
$noticia = array(
'titulo' => 'Php Clase 5 - Bucles',
'cuerpo' => 'Acá va el contenido de la clase 5 de php, mucho texto, mucho mucho',
'autor' => 'Justi'
);
?>
<?
foreach ( $noticia as $indice => $valor ) {
echo "$indice: $valor<br />";
}
?>
Ejemplo 4:
<?
$noticia = array(
'titulo' => 'Php Clase 5 - Bucles',
'cuerpo' => 'Acá va el contenido de la clase 5 de php, mucho texto, mucho mucho',
'autor' => 'Justi'
);
?>
<?
foreach ( $noticia as $indice => $valor ) {
if ( $indice == 'titulo' ) { echo "<h1>$valor</h1>"; }
if ( $indice == 'cuerpo' ) {echo "<p>$valor</p>"; }
if ( $indice == 'autor' ) {echo "<span>$valor</span>"; }
}
?>

Form:
<form action="contacto_script.php" method="post" id="contacto"></form>
Label e Inputs:
Ejemplo 1:
<label for="input_campo">Nombre Campo</label>
<input id="input_campo" type="text" name="nombreCampo" value="" />
Ejemplo 2 (Textbox completado por defecto):
<label for="input_contacto">Nombre Campo</label>
<input id="input_contacto" type="text" name="nombreContacto" value="Complete con sus nombres y apellidos" />
Ejemplo 3 (Radio button):
<label for="input_si">Si</label><input id="input_si" type="radio" name="suscribirse" value="si" />
<label for="input_no">No</label><input id="input_no" type="radio" name="suscribirse" value="no" />
Ejemplo 4 (Checkbox):
<input id=input_acuerdo" type="checkbox" name="acuerdoLegal" value="1" />
Ejemplo 5 (Password):
<input id="input_password" type="password" name="password" value="" />
Ejemplo 6 (Hidden):
<input type="hidden" name="idUsuario" value="25" />
Ejemplo 7 (Submit):
<input type="submit" name="submit" value="Enviar consulta" />
Textarea:
Sintaxis:
<textarea id="textarea_comunicacion" name="comunicacion" rows="10" cols="50"></textarea>
Ejemplo:
<textarea id="textarea_comunicacion" name="comunicacion" rows="5" cols="50">Escribe aquí lo que quieras</textarea>
SelectBox:
Sintaxis:
<select id="select_sexo" name="sexo">
<option value="M">Masculino</option>
<option value="F">Femenino</option>
</select>
Ejemplo:
<select id="select_gustos" name="gustos" multiple="multiple">
<option value="1">Me gusta jugar al Tennis</option>
<option value="2">Me gusta jugar al Futbol</option>
<option value="3">Me gusta jugar al Correr</option>
</select>
¿Cómo recibir datos de un formulario?
Ejemplo de formulario: contacto.php
<form action="contacto_script.php" method="post" id="contacto">
<label for="input_nombres">Nombre y Apellido</label><br />
<input id="input_nombres" type="text" name="nombres" value="" /><br /><br />
<label for="input_email">Email</label><br />
<input id="input_email" type="text" name="email" value="" /><br /><br />
<label for="input_sexo">Sexo</label><br />
<select id="select_sexo" name="sexo">
<option value="M">Masculino</option>
<option value="F">Femenino</option>
</select><br /><br />
<label for="textarea_mensaje">Mensaje</label><br />
<textarea id="textarea_mensaje" name="mensaje" rows="5" cols="50"></textarea><br /><br />
<input type="submit" name="submit" value="Enviar consulta" />
</form>
Ejemplo para recibir datos del formulario: contacto_script.php
<?
// definimos las variables o marcamos el error
if ( !empty($_POST['nombres']) ) $nombres = $_POST['nombres']; else $error = true;
if ( !empty($_POST['email']) ) $email = $_POST['email']; else $error = true;
if ( !empty($_POST['sexo']) ) $sexo = $_POST['sexo']; else $error = true;
if ( !empty($_POST['mensaje']) ) $mensaje = $_POST['mensaje']; else $error = true;
// verificamos que no exista un error
if ( !empty($error) ) {
header( 'Location: contacto_error.php' );
die;
}
// definimos el cuerpo del email
$cuerpo = "
De: $nombres \n\r
Email: $email \n\r
Sexo: $sexo \n\r
Mensaje: \n\r
$mensaje
";
// enviamos el email
if ( mail( 'direccion.del.destinatario@email.com','Recibiste un mensaje a través del formulario de contacto de tu sitio',$cuerpo ) ) {
header( 'Location: contacto_exitoso.php' );
die;
} else {
header( 'Location: contacto_error.php' );
die;
}
?>

Funciones:
Sintaxis:
<?php
function nomber($argumento1, $argumento2, ..., $argumento_n)
{
echo "Función de ejemplo.";
return $resultado;
}
?>
Ejemplo de función para calcular la edad:
<?
public function edad($nacimiento){
//restamos los años (año actual - año cumpleaños)
$edad = date("Y") - ereg_replace("^(.{4}).*","\\1",$nacimiento);
//si pasamos de año, pero aún no cumplimos años, resta 1
if( date("m-d") < ereg_replace(".*(.{5})$","\\1",$nacimiento) ) $edad--;
return $edad;
}
?>
Ejemplo de uso de la función anterior:
Mi nombre es Hernán y tengo <? echo edad('1977-07-06'); ?> años de edad.

Tipos de consultas básicas:
Select: busca información en la base de datos.
Insert: ingresa información para almacenarla y luego ser obtenida mediante una consulta select.
Update: actualiza la información guardada.
Delete: borra la información.
Conexión a bases de datos:
<?
// datos de configuracion
$ip = 'localhost';
$usuario = 'nombre_de_usuario_que_conecta_con_la_db';
$password = 'password_de_la_db';
$db_name = 'nombre_de_la_base_de_datos_que_usamos';
// conectamos con la db
$conn = mysqli_connect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysqli_select_db($conn,$db_name) or die();
?>
Ejemplo de consulta a una base de datos:
$query = "SELECT idNoticia,titulo,cuerpo,estado FROM `noticias`";
$response = mysqli_query($conn,$query);
$c = 0;
while( $row = mysqli_fetch_assoc($response) ) {
$noticia[$c] = $row;
$c++;
}
Ejemplo para mostrar el campo de un registro:
<? echo $noticia[0][‘titulo’]; ?>
Ordenar nuestras consultas:
$query = "SELECT idNoticia,titulo,cuerpo,estado FROM `noticias` ORDER BY idNoticia DESC";
Filtrar las consultas:
$query = "SELECT idNoticia,titulo,cuerpo,estado FROM `noticias` WHERE estado = 'publicado' ORDER BY idNoticia DESC";
Sintaxis para insertar registro en una tabla desde PHP:
$query = "INSERT INTO `nombre_tabla` (campo1,campo2) values (valoresCampo1,valoresCampo2)";
$response = mysqli_query($conn,$query);
Ejemplo para insertar registro en una tabla desde PHP:
Parte HTML:
<html>
<head>
<title>Formulario de Notícias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action="subir-noticias.php" method="post">
<label for="titulo">Titulo</label><br />
<input id="titulo" type="text" name="titulo" value="" /><br /><br />
<label for="cuerpo">Cuerpo</label><br />
<textarea id="cuerpo" name="cuerpo" rows="5" cols="50"></textarea><br /><br />
<label for="estado">Estado</label><br />
<select id="estado" name="estado">
<option value="publicado">Publicado</option>
<option value="borrador">Borrador</option>
</select><br /><br />
<button type="submit" name="submit" value="1">Enviar Noticia</button>
</form>
</body>
</html>
Script de PHP:
<?
// datos de configuracion
$ip = 'localhost';
$usuario = 'usuario';
$password = 'password';
$db_name = 'baseDeDatos';
// conectamos con la db
$conn = mysqli_connect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysqli_select_db($conn,$db_name) or die();
// si se envia el formulario
if ( !empty($_POST['submit']) ) {
$query = "INSERT INTO `noticias` (titulo,cuerpo,estado) values ('{$_POST['titulo']}','{$_POST['cuerpo']}','{$_POST['estado']}')";
$response = mysqli_query($conn, $query);
}
?>
Script completo (Archivo: subir-noticias.php):
<?
// datos de configuracion
$ip = 'localhost';
$usuario = 'root';
$password = '';
$db_name = 'db';
// conectamos con la db
$conn = mysqli_connect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysqli_select_db($conn, $db_name) or die();
// si se envia el formulario
if ( !empty($_POST['submit']) ) {
$query = "INSERT INTO `noticias` (titulo,cuerpo,estado) values ('{$_POST['titulo']}','{$_POST['cuerpo']}','{$_POST['estado']}')";
$response = mysqli_query($conn, $query);
}
?>
<html>
<head>
<title>Formulario de Notícias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action="subir-noticias.php" method="post">
<label for="titulo">Titulo</label><br />
<input id="titulo" type="text" name="titulo" value="" /><br /><br />
<label for="cuerpo">Cuerpo</label><br />
<textarea id="cuerpo" name="cuerpo" rows="5" cols="50"></textarea><br /><br />
<label for="estado">Estado</label><br />
<select id="estado" name="estado">
<option value="publicado">Publicado</option>
<option value="borrador">Borrador</option>
</select><br /><br />
<button type="submit" name="submit" value="1">Enviar Noticia</button>
</form>
</body>
</html>
Sintaxis UPDATE:
$query = "UPDATE `nombre_tabla` set campo1 = 'valoresCampo1', campo2 = 'valoresCampo2' WHERE primaryKey = 'valorPrimaryKey' LIMIT 1";
$response = mysqli_query($conn, $query);
Sintaxis DELETE:
$query = "DELETE FROM `nombre_tabla` WHERE primaryKey = 'valorPrimaryKey' LIMIT 1";
$response = mysqli_query($conn, $query);
Editar una noticia:
http://direccion.com/editar.php?idNoticia=23
if ( !empty($_GET['idNoticia']) ) {
// traemos la noticia
$query = "SELECT idNoticia,titulo,cuerpo,estado FROM `noticias` WHERE idNoticia = {$_GET['idNoticia']} limit 1";
$response = mysqli_query($conn, $query);
$noticia = mysqli_fetch_assoc($response);
}
<h1>Agregar Nueva Noticia</h1>
<form action="editar-noticias.php" method="post">
<label for="titulo">Título</label><br />
<input id="titulo" name="titulo" value="<? echo $noticia['titulo']; ?> " type="text" /><br /><br />
<label for="cuerpo">Cuerpo</label><br />
<textarea id="cuerpo" name="cuerpo" rows="5" cols="50"><? echo $noticia['cuerpo']; ?></textarea><br /><br />
<label for="estado">Estado</label>
<select id="estado" name="estado">
<option value="publicado" <? if ( $noticia['estado'] == 'publicado' ) echo 'selected="selected"'; ?>>Publicado</option>
<option value="borrado" <? if ( $noticia['estado'] == 'borrado' ) echo 'selected="selected"'; ?>>Borrado</option>
</select><br /><br />
<button type="submit" name="submit" value="1">Editar Noticia</button>
<input name="idNoticia" value="<? echo $noticia['idNoticia']; ?>" type="hidden" />
</form>
if ( !empty($_POST['submit']) ) {
$query = "UPDATE `noticias` set titulo = '{$_POST['titulo']}', set cuerpo = '{$_POST['cuerpo']}', estado = '{$_POST['estado']}' WHERE idNoticia = {$_POST['idNoticia']} LIMIT 1";
$response = mysql_query($query, $conn);
}
Archivo terminado (editar-noticias.php):
<?
// datos de configuracion
$ip = 'localhost';
$usuario = 'root';
$password = '';
$db_name = 'baseDeDatos';
// conectamos con la db
$conn = mysqli_pconnect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysqli_select_db($conn, $db_name) or die();
// si se envia el formulario de edicion
if ( !empty($_POST['submit']) ) {
$query = "UPDATE `noticias` set titulo = '{$_POST['titulo']}', set cuerpo = '{$_POST['cuerpo']}', estado = '{$_POST['estado']}' WHERE idNoticia = {$_POST['idNoticia']} LIMIT 1";
$response = mysqli_query($conn, $query);
}
// si tenemos id de noticia
if ( !empty($_GET['idNoticia']) ) {
// traemos la noticia
$query = "SELECT idNoticia,titulo,cuerpo,estado FROM `noticias` WHERE idNoticia = {$_GET['idNoticia']} limit 1";
$response = mysqli_query($conn, $query);
$noticia = mysqli_fetch_assoc($response);
}
?>
<html>
<head>
<title>Formulario de Edición de Noticias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action="editar-noticias.php" method="post">
<label for="titulo">Titulo</label><br />
<input id="titulo" name="titulo" value="<? echo $noticia['titulo']; ?> " type="text" /><br /><br />
<label for="cuerpo">Cuerpo</label><br />
<textarea id="cuerpo" name="cuerpo" rows="5" cols="50"><? echo $noticia['cuerpo']; ?></textarea><br /><br />
<label for="estado">Estado</label>
<select id="estado" name="estado">
<option value="publicado" <? if ( $noticia['estado'] == 'publicado' ) echo 'selected="selected"'; ?>>Publicado</option>
<option value="borrado" <? if ( $noticia['estado'] == 'borrado' ) echo 'selected="selected"'; ?>>Borrado</option>
</select><br /><br />
<button type="submit" name="submit" value="1">Editar Noticia</button>
<input name="idNoticia" value="<? echo $noticia['idNoticia']; ?>" type="hidden" />
</form>
</body>
Borrar una noticia:
if ( !empty($_GET['idNoticia') ) {
$query = DELETE FROM `noticias` WHERE idNoticia = {$_GET['idNoticia']} LIMIT 1";
$response = mysqli_query($conn, $query);
}
Join:
SELECT noticias.titulo, noticias.cuerpo, usuarios.nombre, usuarios.apellido FROM noticias INNER JOIN usuarios ON noticias.idAutor = usuarios.idUsuario
Inner, Left y Right Joins:
SELECT noticias.titulo, noticias.cuerpo, noticiasImagenes.archivo FROM noticias RIGHT JOIN noticiasImagenes ON noticias.idNoticia = noticiasImagenes.idNoticia
Sintaxis Union:
SELECT ... UNION [ALL | DISTINCT] SELECT ...
Count:
SELECT COUNT(*) FROM noticias WHERE estado = 'publicado';
SELECT autor, COUNT(*) FROM noticias GROUP BY autor;
Max y Min:
SELECT MAX(precio) FROM productos;
SELECT MIN(precio) FROM productos;
Promedio (AVG):
SELECT AVG(precio) FROM productos WHERE idProducto = 15;
SUM:
SELECT SUM(precio) FROM carrito WHERE idUsuario = 3;
LIMIT:
SELECT COUNT(*) FROM productos LIMIT 1;
SELECT * FROM productos LIMIT 5,10;

http://www.elwebmaster.com/editorial/taller-de-php-manipulacion-de-archivos-1
No hay comentarios:
Publicar un comentario