jueves, 4 de octubre de 2012

Archivos MVC

La ingeniera nos dejo archivos los cuales deben ser pegados en

C.\xampp\htdocs\xampp

para que puedan ser visualizados despues en el navegador colocando

localhost\index

loas archivos son:
 INDEX:  Este llama a la funcion model.php y ejecuta el view.php


<?php
// Requiring the model
require_once('model.php');

// Retrieving the list of posts
$posts = getAllPosts();

// Requiring the view
require('view.php');
?>

INDEX2

Este lo que hace es guardar el nombre , año en la tabla correspondiente a la Base de datos y lo muestra en View.php


<?php

$nombre = $_GET["fname"];

$id = $_GET["age"];
$accion = $_GET["accion"];
echo $nombre;
echo "<BR>";
echo $id;
echo "<BR>";
echo $accion;
echo "<BR>";

require_once('model.php');
 GuardarDatos($nombre, $id);

// Retrieving the list of posts
$posts = getAllPosts();


// Requiring the view
require('view.php');
?>

MODELO:

Este tien funciones de conectarce a la base de datos y de mandar los datos a l funcion Guardardatos


<?php
function conexion()
{
  $link = mysql_connect('localhost', 'root', '');
  mysql_select_db('prueba', $link);
return $link;
}
function getAllPosts()
{
  // Connecting, selecting database
  $link = conexion();

  // Performing SQL query
  $result = mysql_query('SELECT id, descripcion FROM noticias', $link);

  // Filling up the array
  $posts = array();
  while($row = mysql_fetch_array($result, MYSQL_ASSOC))
  {
     $posts[] = $row;
  }

  // Closing connection
  mysql_close($link);

  return $posts;
}
function GuardarDatos($nombre, $id)



VISTA:

Aca se la parte visual para el usuario donde se muestra en la pantalla
<html>
  <head>
    <title>List of Posts</title>
  </head>
  <body>
    <h1>List of Posts</h1>
    <table>
      <tr><th>id</th><th>Descripcion</th></tr>
<?php foreach($posts as $post): ?>
    <tr>
        <td><?php echo $post ['id'] ?></td>
        <td><?php echo $post ['nombre'] ?></td>
    </tr>
<?php endforeach;?>
    </table>

<form action="index2.php" method="get">
Nombre: <input type="text" name="fname" />
id: <input type="text" name="age" />
<input type="hidden" name="accion" value="Guardar" />
<input type="submit" />
</form> 
  </body>
</html>

CONTROLADOR:
Lo que hace es verificar el usuarioy o password ingresados para conectarce a la base de datos

<?php
// Connecting, selecting database
$link = mysql_connect('localhost', 'myuser', 'mypassword');
mysql_select_db('blog_db', $link);
 
// Performing SQL query
$result = mysql_query('SELECT date, title FROM post', $link);
 
// Filling up the array for the view
$posts = array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
  $posts[] = $row;
}
 
// Closing connection
mysql_close($link);
 
// Requiring the view
require('view.php');


 EJEMPLO: 
Aca presentamos el ejemplo que dejo la ingeniera donde se esta llamando a los archivos modelo, vista,controlador, index1 e index2.

<?php
// Connecting, selecting database
$link = mysql_connect('localhost', 'root', 'rootpass');
mysql_select_db('prueba', $link);
 
// Performing SQL query
$result = mysql_query('SELECT id,nombre FROM persona', $link); 
?>

<html>
  <head>
    <title>Lista de Personas</title>
  </head>
  <body>
   <h1>Lista de Personas (Ejercicio 1)</h1>
   <table>
     <tr><th>Date</th><th>Title</th></tr>
<?php

// Printing results in HTML
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    echo "<tr>";
    printf("<td> %s </td>", $row['id']);
    printf("<td> %s </td>", $row['nombre']);
    echo "</tr>";
}
?>

    </table>
  </body>
</html>
<?php

// Closing connection
mysql_close($link);
?>

CONEXIÓN BASE DE DATOS


Para conectar a la base de datos lo que se tiene que hacer es plasmar el código para realizar esto en resumen se utilizan la siguiente estructura de código :

1ro hay que conectarse a la mysql con los siguientes comandos  

mysql_connect("NombreHost","Usuario","Contraseña")
      En caso que no se pueda realizar la conexión se debe mostrar un mensaje que indique ese ERROR:

     echo "Error conectando a la base de datos.";
      exit();
   }

2do tenemos que escoger que base de datos utilizar que este dentro el mysql:

             mysql_select_db("NombreBaseDatos")
      En caso que no exista la Base de datos mostrar indicar ese error:

if (!mysql_select_db("base_datos",$nombre_de_conexion))   {
      echo "Error seleccionando la base de datos.";
      exit();
   } 

3ro  Cerrar Conexion

mysql_close($nombre_de_conexion)


Ejmplo del PHP

miércoles, 3 de octubre de 2012

Pantallas Proyecto de Curso

Colgamos en el link descargas el documento que contiene el primer borrador de las pantallas para proyecto de curso general por si existe algún error con el servidor acá esta otro enlace:




A si pueden descargarlo y realizar modificaciones.

FORMULARIOS 2 ( SUBIR FICHERO )


El subir ficheros puede complicarse un poco pero trataremos de explicarlo con nuestras propias palabras.
1ro Se encesita cambiar el nombre del fichero internamete darle un nombre adicional esto es por que se pueden ingresar datos iguales.
2do Tambien es necesario subirlo a un lugar por un tiempo y de ahí a su destino final.
3ro Tambien existe la posibilidad que no suba correctamente el fichero en ese caso hay que mandar un mensaje de ERROR.
Los código a escribir son :
HTML
<INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="102400">
<INPUT TYPE="FILE" SIZE="44" NAME="imagen">

PHP
if (is_uploaded_file ($_FILES['imagen']['tmp_name']))
{
   $nombreDirectorio = "img/";
   $idUnico = time();
   $nombreFichero = $idUnico . "-" . $_FILES['imagen']['name'];
   move_uploaded_file ($_FILES['imagen']['tmp_name'],
      $nombreDirectorio . $nombreFichero);
}
else
   print ("No se ha podido subir el fichero\n");

if (is_uploaded_file ($_FILES['imagen']['tmp_name']))
{
   $nombreDirectorio = "img/";
   $nombreFichero = $_FILES['imagen']['name'];
   $nombreCompleto = $nombreDirectorio . $nombreFichero;
   if (is_file($nombreCompleto))
   {
      $idUnico = time();
      $nombreFichero = $idUnico . "-" . $nombreFichero;
   }
   move_uploaded_file ($_FILES['imagen']['tmp_name'],
      $nombreDirectorio . $nombreFichero);
}
else
   print ("No se ha podido subir el fichero\n");

FORMULARIOS

Ejemplo de formularios
}  Fichero principal.php
<HTML>
<BODY>
<FORM ACTION=”otro.php” METHOD=”POST”>
   Colegio: <INPUT TYPE=”text” NAME=”Colegio”>
   <INPUT TYPE=”submit” VALUE=”aceptar”>
</FORM>
</BODY>
</HTML>
}  Fichero otro.php
<HTML>
<BODY>
<?PHP
   $colegio= $_REQUEST[‘colegio’];
   print (“El colegio se llama: $edad”);
?>
</BODY>
</HTML>

TEXT


<INPUT TYPE="text" NAME="cadena" VALUE="valor por defecto" SIZE="20">

<?PHP
   $cadena = $_REQUEST[‘cadena’];
   print ($cadena);
?>

RADIO

Sexo:
<INPUT TYPE="radio" NAME=“sexo" VALUE=“M“ CHECKED>Mujer
<INPUT TYPE="radio" NAME=“sexo" VALUE=“H">Hombre

<?PHP
$sexo= $_REQUEST[‘sexo’];
   print ($sexo);
?>

CHECKBOX

<INPUT TYPE="checkbox" NAME="extras[]" VALUE="garaje" CHECKED>Garaje
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="piscina">Piscina
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="jardin">Jardín

<?PHP
   $extras = $_REQUEST[‘extras’];

   foreach ($extras as $extra)
      print (“$extra<BR>\n”);
 ?>

BUTTON

<INPUT TYPE="button" NAME=“actualizar" VALUE="Actualizar datos">

<?PHP
   $actualizar = $_REQUEST[‘actualizar’];
   if ($actualizar)
      print ("Se han actualizado los datos");
?>

FILE

<FORM ACTION="procesa.php" METHOD="post“
   ENCTYPE="multipart/form-data">
   <INPUT TYPE="file" NAME="fichero">
</FORM>


HIDDEN

<?PHP
   print(“<INPUT TYPE=’hidden’ NAME=’username’ VALUE=’$usuario’>\n”);
?>

<?PHP
   $username= $_REQUEST[‘username’];
   print ($username);
?>

PASSWORD

Contraseña: <INPUT TYPE="password" NAME="clave">

<?PHP
   $clave= $_REQUEST[‘clave’];  
   print ($clave);
?>

SUBMIT

<INPUT TYPE="submit" NAME="enviar" VALUE="Enviar datos">

<?PHP
   $enviar= $_REQUEST[‘enviar’];
   if ($enviar)
      print ("Se ha pulsado el botón de enviar");
?>

SELECT SIMPLE
Color:
<SELECT NAME=“color">
   <OPTION VALUE=“rojo" SELECTED>Rojo
   <OPTION VALUE=“verde">Verde
   <OPTION VALUE=“azul">Azul
</SELECT>

<?PHP
   $color= $_REQUEST[‘color’];
   print ($color);
?>

SELECT MULTIPLE
Idiomas:
<SELECT MULTIPLE SIZE="3" NAME="idiomas[]">
   <OPTION VALUE="ingles" SELECTED>Inglés
   <OPTION VALUE="frances">Francés
   <OPTION VALUE="aleman">Alemán
   <OPTION VALUE="holandes">Holandés
</SELECT>

<?PHP
   $idiomas = $_REQUEST[‘idiomas’];
   foreach ($idiomas as $idioma)
      print (“$idioma<BR>\n”);
?>

TEXTAREA
Comentario:
<TEXTAREA COLS=“50" ROWS=“4" NAME="comentario">
Este libro me parece ...
</TEXTAREA
<?PHP
   $comentario = $_REQUEST[‘comentario’];
   print ($comentario);
?>

Enviar Formulario
<INPUT TYPE="SUBMIT" NAME="enviar“ VALUE="procesar">

if (isset($enviar))
                o bien
if ($enviar == “procesar”)

Subir formulario
PHP.INI:

file_uploads = On
; Archivo temporal
;Archive con extencion maxima
upload_max_filesize = 2M

Formulario:
<INPUT TYPE=”HIDDEN” NAME=”MAX_FILE_SIZE” VALUE='102400'>
<INPUT TYPE=”FILE” NAME="fichero">

martes, 2 de octubre de 2012

COMANDOS PHP


Sintaxis básicas:

Para programas en php se necesita tener algunos conocimientos de html en sus códigos los cules explicamos a continuación:
<HTML> ( empieza html)
<HEAD>(emezamos cabezera)
<TITLE>Mi primer programa en PHP</TITLE> (empieza y termina un titulo)
</HEAD> ( cierra cabezera)
<BODY> (empieza cuerpo)
<?PHP ( EMPIEZA PHP)
   print (“Hola mundo”); ( imprime hola mundo en pantalla)
?> (cierra php)
</BODY> (cierra cuerpo)
</HTML> (cierr html)

 Aca dejamos los comandos mas usados para la programacion en php:

\n
print (“<P>Párrafo 1</P>\n”);
print (“<P>Párrafo 2</P>\n”);

Como un enter entre parrafos
Include()
Incluye fichero, en caso de error da warning
<HTML>
<HEAD>
   <TITLE>Título</TITLE>
<?PHP
// Incluir bibliotecas de funciones
   require ("$libdir/conecta.php");
?>
</HEAD>
<BODY>

Require()
Incluye fichero, en caso de error detiene carga de pagina
<HTML>
<HEAD>
   <TITLE>Título</TITLE>
<?PHP
<?PHP
   include ("pie.html");
?>
</BODY>
</HTML>

integer
Tipo de dato entero
3,4,-5
double
reales
3.56,4.6
boolean
Lolcgico
True, false , 0 (false)
string
Comilla simple
$a = 9;
print ‘a vale $a’; // muestra a vale $a


Comilla doble
print “a vale $a”; // muestra a vale 9


Acceso a caracteres de cadena
$inicial = $nombre{0};

Variables
Precedidas por un $
$valor = 5;
print “El valor es: “ . $valor . “\n”;
print “El valor es: $valor\n”; // ojo: comillas dobles
Resultado:
                El valor es: 5

Constante
No llevan $

Operadores
Aritmeticos
+, -, *, /, %, ++, --

Asignacion
=

Combinados
}  .=, += ($a = 3; $a += 5;) a vale 8
              

Comparacion
==, !=, <, >, <=, >=

Control de error
@. Antepuesto a una expresión

Logicos
and (&&), or (||)(condioferentes prioridades), !, xor

Cadena
concatenación:.(punto)
asignación con concatenación: .=

Etructuras de control
}  if-else

}  if-else
if (expresión1)
                sentencia 1
else if (expresión2)
                sentencia 2
...
else if (expresión n)
                sentencia n
else
                sentencia n+1


}  while

}  while
while (expresión)
                sentencia


}  do .. while




}  for

<?php
for ( $i = 1 ; $i <= 10 ; $i ++)
{
print$i;
}
?>
foreach
}  foreach (expresión_array as $valor)
sentencia
}  )

foreach ($color as $valor)
                print “Valor: $valor<BR>\n”;


}  switch

}  switch
switch (expresión)
{
                case valor 1:
                               sentencia 1
                               break;
                case valor 2:
                               sentencia 2
                               break;
               
                case valor n:
                               sentencia n
                                break;
                default
                               sentencia n+1
}

TABLA
array ([clave =>] valor, ...)

$color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255);
$medidas = array (10, 25, 15);
Acceso:
$color[‘rojo’] // No olvidar las comillas
$medidas[0]