Logo

Foro sobre los Ciclos Formativos de Grado Medio ( SMR ) y Superior ( ASIR, DAI, DAM y DAW ).

proyecto final

¿ Estás preparando tu proyecto de fin de curso y tienes dudas ? ¿ Quieres enseñarnos tu proyecto para ver que nos parece o que mejorariamos ? Entra aquí.

proyecto final

Notapor Marina el 18 May 2010, 14:38

Hola a todos!
Bueno abro este post para ver si entre todos me podeis ayudar a aclarar algunas dudas que tengo sobre mi trabajo.
Tengo creada un BD que consta de 7 tablas:
Cliente
invitado
registrado
alquilar
pelicula
genero
repartidor

En los clientes lo he separado en una jerarquia para distinguir de los registrados y los no registrados.
Alquilar es la relacion entre cliente y pelicula(con los atributos: id_cliente,id_pelicula,fecha_alquiler,id_repartidor,hora_alquiler..)
Para que el repartidor sepa que pelicula tiene que llevar a que cliente en que hora.


Para insertar los datos de los cliente que se registran tengo este codigo:
Conexion_BD.php
Código: Seleccionar todo
<?PHP
//Dades de la conexió
$servidor = 'localhost';
$usuario = 'root';
$clave = '';
$base_de_datos = 'films_collection';

function conectar() {

//Declaramos las variables como globales para poder hacer uso de ellas posteriormente
//desde fuera de este mismo script
global $servidor;
global $usuario;
global $clave;
global $base_de_datos;
global $conexion;

$conexion=mysql_connect($servidor,$usuario,$clave) or die (mysql_error ":No puedo conectarme a la base de datos"); //conexion a Mysql
mysql_select_db($base_de_datos); //una vez conectado se elije la base de datos
}

function desconectar() {
global $conexion;
mysql_close($conexion); //cerramos la conexion con la base de datos.
}
?>


Guardar_cliente.php
Código: Seleccionar todo
<?php
$usuario=$_POST['usuario'];
$contra_uno=$_POST['contra_uno'];
$contra_dos=$_POST['contra_dos'];
$nombre=$_POST['nombre'];
$apellidos=$_POST['apellidos'];
$fecha=$_POST['fecha'];
$sexo=$_POST['sexo'];
$via=$_POST['via'];
$email=$_POST['email'];
$direccion=$_POST['direccion'];
$telefono=$_POST['telefono'];
$mobil=$_POST['mobil'];

include("conexion_BD.php");
global $conexion;
global $servidor;
global $usuario;
global $clave;
global $base_de_datos;
conectar();

$sql="INSERT INTO registrado(usuario,contra_uno,contra_dos,nombre,apellidos,fecha,sexo,via,email,direccion,telefono,mobil) VALUES
('$usuario','$contra_uno','$contra_dos','$nombre','$apellidos','$fecha','$sexo','$via', '$email','$direccion', '$telefono', '$mobil')";
mysql_db_query($base_de_datos,$sql);
desconectar();
?>


registrarse.html
Código: Seleccionar todo
<html>
<head>
<title>||Films Colection|| Las mejores peliculas de todo Internet||</title>
<script type="text/javascript" src="jquery/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery/jquery.slidertron-0.1.js"></script>
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
<style type="text/css">
@import "slidertron.css";
.Estilo2 {color: #FF9933}


a {color:orange}
</style>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
</head>
<body link=#592114 vlink=#F7811D>
<!-- end #header-wrapper -->
<div id="logo">
   <h1><a href="#">Films Collections</a></h1>
</div>
<div id="header">
   <div id="menu">
      <ul>
         <li><a href="index.html" class="first">Inicio</a></li>
         <li class="current_page_item"><a href="#">peliculas</a></li>
         <li><a href="#">Foro</a></li>
         <li><a href="#">Registrarse</a></li>
         <li><a href="contacto.html">Contactar</a></li>
      </ul>
   </div>
   <!-- end #menu -->
   <div id="search">
      <form method="get" action="">
         <fieldset>
            <input type="text" name="s" id="search-text" size="15" />
         </fieldset>
      </form>
   </div>
   <!-- end #search -->
</div>
<!-- end #header -->
<hr />
<!-- end #logo -->
<div id="page">
   <div id="page-bgtop">
      <div id="content">
         <div class="post">
            <h2 class="title"><a href="#" class="Estilo2">Formulario de registro </a></h2>
            <div class="entry">
            <!-- Formulario Usuario -->
            
            <form action="guardar_cliente.php" method="post">
            <fieldset>
            <legend><B></font>DATOS USUARIO</B></legend>
              <table width="280" border="0">
                    <tr>
                      <td width="124"><div align="right"><strong>Nombre Usuario:</strong></div></td>
                      <td width="146"><input type="text" name="usuario" /></td>
                    </tr>
                    <tr>
                      <td><div align="right"><strong>Contrase&ntilde;a:</strong></div></td>
                      <td><input type="password" name="contra_uno" />
                      </td>
                    </tr>
                    <tr>
                      <td><div align="right"><strong>Validar Contrase&ntilde;a:</strong></div></td>
                      <td><input type="password" name="contra_dos" />
                      </td>
                    </tr>
                  </table>
              </fieldset>
            
               
            <p>&nbsp;</p>
            
            <fieldset>
            <legend><b>DATOS PERSONALES</b></legend>
            <table width="501" border="0">
                  <tr>
                    <td width="123"><div align="right"><strong>Nombre:</strong></div></td>
                    <td width="144">
                      <input type="text" name="nombre" />
                   </td>
                  <td width="66">&nbsp;</td>
                  <td width="150">&nbsp;</td>
                  </tr>
                  <tr>
                    <td><div align="right"><strong>Apellidos:</strong></div></td>
                    <td>
                      <input type="text" name="apellidos" />
                    </td>
                  <td>&nbsp;</td>
                  <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td><div align="right"><strong>Fecha de nacimiento:</strong></div></td>
                    <td>
                      <input type="text" name="fecha" />
                    </td>
                  <td>&nbsp;</td>
                  <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td><div align="right"><strong>Sexo:</strong></div></td>
                    <td><input type="radio" name="sexo" id="hombre">
                    Hombre &nbsp;&nbsp;<input type="radio" name="sexo" id="mujer">Mujer</td><br>
                  <td>&nbsp;</td>
                  <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td><div align="right"><strong>Tipo de via: </strong></div></td>
                    <td><select name="via">
               <option selected>--Elige una opci&oacute;n--</option>
               <option>Calle</option>
               <option>Avenida</option>
               <option>Paseo</option>
               <option>Plaza</option></select></td>
                  <td><div align="right"><strong>Direcci&oacute;n: </strong></div></td>
                  <td><input type="text" name="direccion" /></td>
                  </tr>
                  <tr>
                    <td><div align="right"><strong>Email:</strong></div></td>
                    <td><input type="text" name="email" /></td>
                  <td>&nbsp;</td>
                  <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td><div align="right"><strong>Tel&eacute;fono:</strong></div></td>
                    <td><input type="text" name="telefono" /></td>
                  <td><div align="right"><strong>M&oacute;bil:</strong></div></td>
                  <td><input type="text" name="mobil" /></td>
                  </tr>
                </table>
            </fieldset>

            <p>&nbsp;</p>
            <fieldset>
            <legend><b>REGISTRARSE</b></legend>
            <table width="131" border="0">
                  <tr>
                    <td width="54">
                    <input type="submit" name="enviar" value="Enviar" />                    </td>
                    <td width="136"><input type="reset" name="reset" value="Restablecer" />                    </td>
                  </tr>
                </table>
            </fieldset>
            </form>
            
            <p>&nbsp;</p>
            
            
            </div>
            
         </div>
     </div>
      <!-- end #content -->
   
        <p>&nbsp;</p>
        <div id="Layer1" style="position:absolute; width:200px; height:115px; z-index:1; top: 191px; left: 870px;"><img src="../../../Documents%20and%20Settings/Administrador/Escritorio/pelicula.jpg" width="300" height="607" /></div>
        <div style="clear: both;">&nbsp;</div>
   </div>
   <!-- end #page -->
</div>
<div id="footer">
   <p>Copyright (c) 2010 www.filmscolection.com. All rights reserved. Design by Marta y Marina.</p>
</div>
<!-- end #footer -->
</body>
</html>


Y no consigo que al rellenar el formulario me envie los datos a la BD, a ver si me podeis decir que veis mal, o que cambiariais.
Un saludo y muchas gracias
Avatar de Usuario
Marina
Visitante
Visitante
 
Mensajes: 10
Registrado: 17 Mar 2010, 09:36
Ciclo Formativo: No estudio FP
Curso:
Acceso por: Grad. ESO
Provincia: Barcelona
Instituto: IES Estatut

Re: proyecto final

Notapor Lobo14 el 18 May 2010, 16:12

He estado mirando tu codigo, y creo que el fallo es de conexion, cuando envias el formulario, te aparece un mensaje como este:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in conexion_BD.php on line XX

Verdad?!?!

Pues en tu codigo, en el archivo conexion_BD.php en la linea:

Código: Seleccionar todo
...
$conexion=mysql_connect($servidor,$usuario,$clave) or die (mysql_error ":No puedo conectarme a la base de datos"); //conexion a Mysql
...


Eso esta mal, mysql_error(); es una funcion, a la cual hay que pasarle un entero creo, entonces, primero que nada, estarias poniendo mal esa funcion porque no tiene parentesis, pero de todas formas tampoco puedes pasarle esa cadena de texto porque no podria hacer nada.

La solucion a tu problema es quitar lo de "mysql_error", y dejarlo asi:

Código: Seleccionar todo
...
$conexion=mysql_connect($servidor,$usuario,$clave) or die ("No puedo conectarme a la base de datos"); //conexion a Mysql
...


Pruebalo y nos cuentas que tal, un saludo!
Avatar de Usuario
Lobo14
Moderador FP
Moderador FP
 
Mensajes: 1438
Registrado: 04 Sep 2008, 15:12
Ciclo Formativo: DAI / DAM
Curso:
Acceso por: Prueba de Acceso
Provincia: Huelva
Instituto: I.E.S. La Marisma

Re: proyecto final

Notapor Marina el 19 May 2010, 18:36

Lobo probe lo que me dijiste, me imagino que tienes razon, pero ami no me sale el error como tu dices, me sale la pagina en blanco como si el registro fuera bueno y se enviara a la BD, pero luego miro en la BD y no se a registrado la entrada. :S
Avatar de Usuario
Marina
Visitante
Visitante
 
Mensajes: 10
Registrado: 17 Mar 2010, 09:36
Ciclo Formativo: No estudio FP
Curso:
Acceso por: Grad. ESO
Provincia: Barcelona
Instituto: IES Estatut

Re: proyecto final

Notapor Lobo14 el 19 May 2010, 18:52

La verdad es que en tu codigo me lia un poco todo eso que tienes formado con las variables globales y todo eso... es algo que nunca he utilizado.

Porque no intentas hacerlo siguiendo el ejemplo que hizo newboy en su tutorial de PHP y MySQL, que esta en el apartado de tutoriales de la pagina web: Debe registrarse para ver este enlace. Gracias por su visita.

La verdad es que esos ejemplos estan bastante bien, a mi me han servido para mucho.
Avatar de Usuario
Lobo14
Moderador FP
Moderador FP
 
Mensajes: 1438
Registrado: 04 Sep 2008, 15:12
Ciclo Formativo: DAI / DAM
Curso:
Acceso por: Prueba de Acceso
Provincia: Huelva
Instituto: I.E.S. La Marisma

Re: proyecto final

Notapor newboy el 19 May 2010, 21:22

Sí, haces una cosa extraña, declaras unas globales, luego una función para conectar a la DB, y luego en otro archivo vuelves a declarar las variables.

Prueba a hacerlo con constantes como tengo en el tutorial que hice, como ha dicho Lobo14.

Imagen

Debe registrarse para ver este enlace. Gracias por su visita.

Abajo del todo te puedes bajar el código completo para testearlo, si tienes algún problema postéalo.

Salu2.
Avatar de Usuario
newboy
Admin & Webmaster
Admin & Webmaster
 
Mensajes: 2070
Registrado: 20 Jul 2008, 16:12
Ubicación: 127.0.0.1
Ciclo Formativo: No estudio FP
Curso: Ninguno

Re: proyecto final

Notapor Marina el 21 May 2010, 00:54

muchas gracias a todos, ya me funciona, lo que me fallaba era un campo del insert, que era diferente que el del formulario xDDD

ya esta manera es bastante liosa, pero nos la paso el profesor (q idea no tiene mucha xDDD) pero como es el que evalua esta parte del proyecto prefiero hacerla a su manera q seguro q lo valora mas... aunque seguro qe hay mil manera mejor de hacerlo, eso no lo dudo!! xDD

ya q toy aqui.... por casualidad alguien no sabra como validar formularios con javascript n???mas que nada lo qe me interesa es saber como hacer para que por ejemplo si en el textbox de usuario, el nombre que se introduzca esta ya en la base de datos, que ese textbox se me ponga en rojo, y al lado me muestre el mensaje: ·este nombre ya esta utilizado" y en caso contrario, que el nombre estubiera libre me pusiese el textbox en verde.

Bueno, espero no haberme explicado muy mal :P


un saludo y ml gracias.
Avatar de Usuario
Marina
Visitante
Visitante
 
Mensajes: 10
Registrado: 17 Mar 2010, 09:36
Ciclo Formativo: No estudio FP
Curso:
Acceso por: Grad. ESO
Provincia: Barcelona
Instituto: IES Estatut

Re: proyecto final

Notapor Lobo14 el 21 May 2010, 01:18

Me alegro que te funcione.

Con lo de la validacion, eso lo tendrias que hacer en AJAX, y de eso entiendo newboy mas que yo...

Creo que me paso una vez el codigo de lo que tu quieres, que se pusiese en rojo si estaba cogido o algo de eso, pero ahora no recuerdo, asi que habra que esperar a que conteste el... xD
Avatar de Usuario
Lobo14
Moderador FP
Moderador FP
 
Mensajes: 1438
Registrado: 04 Sep 2008, 15:12
Ciclo Formativo: DAI / DAM
Curso:
Acceso por: Prueba de Acceso
Provincia: Huelva
Instituto: I.E.S. La Marisma


Re: proyecto final

Notapor Marina el 25 May 2010, 14:53

Hola de nuevo!
Estoy haciendo de nuevo la conexion de mi codigo php con la base de datos, por le metodo que tiene newboy en los tutoriales.Pero me a surgido una duda.
El codigo del archivo conexion.php y el formulario.php lo entiendo claramente, pero he visto que en el formualario.php el action va dirigido a nuevo.php Ese archivo de que constaria??? porque en el tutorial no sale.
Y otra duda es, los valores los recoges en el validar.php no?? con el codigo $usuario=limpiar($_POST['usuario']); cierto n????
pero es que no veo ninguna relacion entre el archivo validar.php y el archivo formulario.php, dnd se tendria que hacer??? para saber l formulario que tiene que validarse con ese archivo??'
Me imagino que es una pregunta estupida, y que en un momento me la sabreis explicar.
Muchas gracias y una saludo.
Avatar de Usuario
Marina
Visitante
Visitante
 
Mensajes: 10
Registrado: 17 Mar 2010, 09:36
Ciclo Formativo: No estudio FP
Curso:
Acceso por: Grad. ESO
Provincia: Barcelona
Instituto: IES Estatut

Re: proyecto final

Notapor Lobo14 el 25 May 2010, 15:32

Eso es porque en el manual ha tenido ese pequeño fallo, que en el action del formulario a puesto "nuevo.php" y es en realidad a "validar.php", corrigelo y por lo demas debe de ir bien!
Avatar de Usuario
Lobo14
Moderador FP
Moderador FP
 
Mensajes: 1438
Registrado: 04 Sep 2008, 15:12
Ciclo Formativo: DAI / DAM
Curso:
Acceso por: Prueba de Acceso
Provincia: Huelva
Instituto: I.E.S. La Marisma

Siguiente

Volver a Proyecto Integrado

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados