Buenas tardes amigos hoy vengo porq tengo un pequeño problema a la hora de hacer la inserccion a la base de datos. no me guarda en la tabla lo que quiero.
Tengo un programa que pide al cliente
COdigo:
Nombre:
Cedula:
Direccion:
Telefono:
Pero no me los guarda. aca dejo el codigo pa ver en q me pueden ayudar.
Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<title> INGRESAR DATOS CLIENTE</title>
<LINK REL="stylesheet" type="text/css" href="estilo.css" media="all" <div align="center"> <img src="celulares4.png" width="490" height="258" border="0" >
<body style="color:#000000;background-color:#ffffff;" >
<?php
include('config.php');
include 'cliente.php';
include 'classBD.php';
if(isset($_SESSION['usuario'])){ // isset sirve para saber si existe la session.
echo "<center>Estas logeado</center>";
}else{
print ("<BR><BR>\n");
print ("<P ALIGN='CENTER'>Acceso no autorizado</P>\n");
print ("<P ALIGN='CENTER'>[ <A HREF='index.php'>Conectar</A> ]</P>\n");
}
?>
<script type="text/javascript" LANGUAGE="JAVASCRIPT">
function verifica(){
//validar el codigo
if (document.funcion.codigo.value==0)
{
alert("Debes Ingresar el Codigo Del cliente")
document.funcion.codigo.focus()
return 0;
}
//validar nombre
if (document.funcion.nombre.value==0)
{
alert("Debes Ingresar Nombre del cliente")
document.funcion.nombre.focus()
return 0;
}
//validar Direccion
if (document.funcion.direccion.value==0)
{
alert("Debes Ingresar La Direccion Del Cliente")
document.funcion.direccion.focus()
return 0;
}
//validar Telefono
if (document.funcion.telefono.value==0)
{
alert("Debes Ingresar El Telefono del Cliente")
document.funcion.telefono.focus()
return 0;
}
//el formulario se envia
alert("Muchas gracias por enviar el formulario");
document.funcion.submit();
document.funcion.opt.value=1;
}
</script>
</head>
<body>
<body>
<center><h1>INGRESO DE DATOS CLIENTE</h1>
<form method="POST" name="funcion" ACTION="datos_cliente.php"
onSubmit="return verifica();">
<H3>DATOS PERSONALES</H3>
<H4>CODIGO DEL CLIENTE:</H4>
<input type="text" name="codigo" size="20"><br>
<FONT COLOR="#FF0000"> *CAMPO OBLIGATORIO </FONT><br>
<H4>NOMBRE COMPLETO:</H4>
<input type="text" name="nombre" size="20"><br>
<FONT COLOR="#FF0000"> *CAMPO OBLIGATORIO </FONT><br>
<H4>CEDULA:</H4>
<input type="text" name="cedula" size="20"><br>
<FONT COLOR="#FF0000"> *CAMPO OBLIGATORIO </FONT><br>
<H4>DIRECCION DEL CLIENTE:</H4>
<input type="text" name="direccion" size="20"><br>
<FONT COLOR="#FF0000"> *CAMPO OBLIGATORIO </FONT><br>
<H4>TELEFONO DEL CLIENTE:</H4>
<input type="text" name="telefono" size="20"><br>
<FONT COLOR="#FF0000"> *CAMPO OBLIGATORIO </FONT><br>
</form>
</center>
<center>
<br>
<BR>
<tr>
<td colspan="2">
<p align="center"><input type="button" value="grabar" name="grabar" onclick="verifica()">
<p align="center"><input type="reset" name="borrar" value ="Borrar">
</td>
</tr>
</center>
</head>
<body>
<?PHP
$grabar =$_REQUEST['grabar'];
$codigo =$_REQUEST['codigo'];
$nombre =$_REQUEST['nombre'];
$cedula =$_REQUEST['cedula'];
$direccion =$_REQUEST['direccion'];
$telefono =$_REQUEST['telefono'];
if (isset($grabar))//SI YA FUE EJECUTADO GRBAR SE VIENE PARA ACA SI NO NO
{
$insertar = new cliente();
$insertar->agregarEmpleado($codigo, $nombre, $cedula, $direccion, $telefono);
}
?>
<a href="salir.php">Desconectar</a>
</body>
</html>
Aca esta la classBD
Código PHP:
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
* Description of classBD
*
* @author carmenu
*/
class classBD {
// en esta clase declararemos los metodos de algunas de las funciones de php y mysql
private $ssql;
private $usuario;
private $host;
private $database;
private $password;
private $conex;
private $res;
private $data;
private $num;
function __construct($usuario,$host,$database,$pasword)
{
$this->usuario =$usuario;
$this->host = $host;
$this->database = $database;
$this->password = $pasword;
}
function Conectar()
{
$this->conex = mysql_connect($this->host,$this->usuario,$this->password)
or die("Error 01: Conexión fallida");
mysql_select_db($this->database,$this->conex)
or die("Error 02: Base de datos no encontrada");
}
function Desconectar()
{
mysql_close($this->conex) or die("Error 03: Desconexión Fallida");
}
function Query( $instruccion )
{
$this->res = mysql_query($instruccion,$this->conex)
or die(mysql_error($this->conex)."---".$query);
}
function NumFilas()
{
if(isset($this->res))
{
$this->num = mysql_num_rows($this->res);
}
else die("Error 05: No hay Registros cargados");
return $this->num;
}
function Extraer()
{
if(isset($this->res))
{
$this->data = mysql_fetch_array($this->res);
}
else die("Error 04: Extracción fallida");
return $this->data;
}
}
?>
y aca la clase cliente.php
Código PHP:
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
* Description of Empleados
*
* @author carmenu
*/
class cliente {
private $bd;//PERMITE CONECTAR CON LA BASE DE DATOS
private $codigo;
private $nombre;
private $cedula;
private $direccion;
private $telefono;
function __construct($codigo,$nombre,$cedula,$direccion,$telefono) {
$this->bd = new classBD("root","localhost","proyecto","");
$this->codigo = $codigo;
$this->nombre = $nombre;
$this->cedula = $cedula;
$this->direccion = $direccion;
$this->telefono = $telefono;
}
function agregarEmpleado($codigo,$nombre,$cedula,$direccion,$telefono){
// Conectar a la base de datos
$this->bd->Conectar();
$this->bd->Query("select * from cliente where codigo ='$codigo'");//PARA INSERTAR HAY QUE SABER SI EXISTE
$nf= $this->bd->NumFilas();
if ($nf==0) // VERIFICA SI EL RESULTADO DE LA CONSULTA EXISTE
{
$this->bd->Query("INSERT INTO cliente
(codigo,nombre,cedula,direccion,telefono)
VALUES ('$codigo','$nombre','$cedula','$direccion','$telefono')");
echo ("<script language='javascript'>");
echo ("alert('Se agrego datos del cliente satisfactoriamente ')");
echo ("</script>");
}
else {
echo ("<script language='javascript'>");
echo ("alert('El codigo de empleado '+$codigo+' ya esta registrado ')");
echo ("</script>");
}
$this->bd->Desconectar();
}
function consulta() {
$this->bd->Conectar();
$this->bd->Query("select * from cliente");
$nf = $this->bd->NumFilas();
if ($nf > 0)
{
$x=0;
while ($data = $this->bd->Extraer())
{
$x++;
$salida[$x]['codigo']=$data->codigo;
$salida[$x]['nombre']=$data->nombre;
$salida[$x]['cedula']=$data->cedula;
$salida[$x]['direccion']=$data->direccion;
$salida[$x]['telefono']=$data->telefono;
}
}
else
echo "No existen registros ...";
$this->bd->Desconectar();
return $salida;
} // fin de la funcion consultar
}
?>
No me guarda en la tabla.. la base de datos se llama repuesto y la tabla se llama cliente. pero nada de nada necesito sus ayudas de paso cuando llamo a la inserccion con
Código PHP:
$grabar =$_REQUEST['grabar'];
$codigo =$_REQUEST['codigo'];
$nombre =$_REQUEST['nombre'];
$cedula =$_REQUEST['cedula'];
$direccion =$_REQUEST['direccion'];
$telefono =$_REQUEST['telefono'];
if (isset($grabar))//SI YA FUE EJECUTADO GRBAR SE VIENE PARA ACA SI NO NO
{
$insertar = new cliente();
$insertar->agregarEmpleado($codigo, $nombre, $cedula, $direccion, $telefono);
me da es un error de indefinido y nose que hacer :S necesito su gran colaboracion para q me saquen de dudas amigos