Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

PHP OO Problema Inserccion a base de datos PHP orientado a objetos

Estas en el tema de Problema Inserccion a base de datos PHP orientado a objetos en el foro de Frameworks y PHP orientado a objetos en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 17/07/2011, 15:53
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Problema Inserccion a base de datos PHP orientado a objetos

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">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>NOMBRE COMPLETO:</H4>
        <input type="text" name="nombre" size="20"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>CEDULA:</H4>
        <input type="text" name="cedula" size="20"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>DIRECCION DEL CLIENTE:</H4>
        <input type="text" name="direccion" size="20"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>TELEFONO DEL CLIENTE:</H4>
        <input type="text" name="telefono" size="20"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</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
  #2 (permalink)  
Antiguo 17/07/2011, 18:40
Avatar de duskrow  
Fecha de Ingreso: abril-2008
Mensajes: 267
Antigüedad: 16 años, 7 meses
Puntos: 8
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

muestrame el error
__________________
"El sabio no dice lo que piensa,pero piensa lo que dice"
Att Miguel Lomeli
Visita mi Blog
  #3 (permalink)  
Antiguo 17/07/2011, 20:26
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

me sale este error mi hermano



como si no las definiera el error me dice q son estas lineas del primer codigo q puse arriba

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); 
  #4 (permalink)  
Antiguo 18/07/2011, 04:23
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 8 meses
Puntos: 253
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Buenas tardes, dos cosillas:

1. Tu formulario no envía nada, porque no existe botón de submit y el botón que tú crees que es submit está fuera del formulario:
Código PHP:
        </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
2. Por lo que más queráis, dejad de utilizar $_REQUEST para tratar datos que vengan de un form, ya que esta variable no distingue entre GET, POST y COOKIE, usad $_POST, que para eso está.

Un saludo y espero que te sirva.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #5 (permalink)  
Antiguo 18/07/2011, 05:43
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Buenos dias hermano gracias por la correpcion.! ya lo acomode

pero nada sigue con el mismo error como si no hubiese declarado las variables :S noc q hacer esto me tiene loco mira como es el error. este error es en los _POST que no agarra del formulario el name de cada uno como ejemplo codigo nombre cedula.. :( ando mal

  #6 (permalink)  
Antiguo 18/07/2011, 05:58
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 8 meses
Puntos: 253
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Pégale un buen repaso a tu código, porque cada vez que lo veo encuentro errores nuevos.

Si lo que has hecho ha sido meter los dos botones en el form, sigues teniendo el error de que no tiene submit, ya que tu botón de enviar es type="button". Para que el form se envíe tienes que tener un type="submit". Si no, nunca se enviará.

Por comentarte algún otro error, en estas dos líneas tienes un <p> que nunca se cierra:
Código:
                <p align="center"><input type="button" value="grabar" name="grabar" onclick="verifica()">
                <p align="center"><input type="reset" name="borrar" value ="Borrar">
En serio, pégale un gran repaso, porque ese código es un poco chapuza y no pasaría ningún validador.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #7 (permalink)  
Antiguo 18/07/2011, 06:04
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 8 meses
Puntos: 253
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Sólo por comentar algunos errores:
1. Tienes varias etiquetas <body>, lo cual está fatal.
2. Las etiquetas <br> las tienes sin cierre, sería <br/>
3. Tienes etiquetas <tr> y <td> sin tener una <table>
4. Tienes una etiqueta </head> a mitad del body.

Resumiendo, está claro que este código es un copy paste de mil sitios diferentes y creo que podríamos estar aquí toda la tarde y seguiría sin funcionar. Lo que me extraña es que te muestre algo, viendo cómo está montado.

Yo que tú borraría todo y empezaría de 0 con algún ejemplo sacado de las FAQs de este foro o algo así, porque no hay por dónde cogerlo.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #8 (permalink)  
Antiguo 18/07/2011, 12:21
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

No es ningun copy y paste de ningun sitio....

yo hize antes un programa igual pero no era dirigido a objetos. y en eso doy incapie porq me ha hecho dificil..:!

:S lo unico error q me da es el de undefined.(no definido) no se porque si estoy cogiendo las variables con el POST pero no me las agarra hay una perdida!

ando estresado esto es un sistema q tengo q entregar y no me funciona el corrido, sacare mala nota.! Solo pido ayuda eso es todo
  #9 (permalink)  
Antiguo 18/07/2011, 13:51
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 8 meses
Puntos: 253
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Si haces la comprobación fuera del if, la primera vez que entre en la página, $_POST no estará inicializado, luego te dará error de undefined (como tú dices). La extracción de los datos debe estar dentro del if, prueba esto:

Código PHP:
    if (isset($_POST['grabar'])) {
        
$codigo =$_POST['codigo'];
        
$nombre =$_POST['nombre'];
        
$cedula =$_POST['cedula'];
        
$direccion =$_POST['direccion'];
        
$telefono =$_POST['telefono'];
        
$insertar = new cliente();
        
$insertar->agregarEmpleado($codigo$nombre$cedula$direccion$telefono);
    } 
Si sigue sin funcionarte, asegúrate de que tienes hechos bien todos los includes de las clases que estás utilizando, aunque creo que si los tienes al principio del php.

Y en cuanto a lo del formateo del primer fichero, como te comentaba antes, está muy mal, pégale un buen repaso, sobre todo si es para entregar en clase, porque tiene muchos fallos y son fallos de HTML, no tiene nada que ver con PHP Orientado a Objetos, tienes etiquetas duplicadas, código que sobra, cierre de etiquetas sin inicio... Te lo digo como consejo.

Un saludo y espero que con esto te funcione.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #10 (permalink)  
Antiguo 19/07/2011, 11:01
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

bueno les cuento amigos con el IF al comienzo no me da el error..


pero no me guardan en la tabla la informacion. :(
antes de eso tengo un registro de usuario con otra tabala y si guarda pero con esta tabla de cliente no me da.. no me registra nada ando pero mal :S
  #11 (permalink)  
Antiguo 21/07/2011, 10:44
 
Fecha de Ingreso: septiembre-2008
Mensajes: 38
Antigüedad: 16 años, 2 meses
Puntos: 2
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Compañero, Tu Problema Está En El Constructor de Clientes... no le pasas parámetros cuando inicializas tu objeto. Te paso la solución. en breve
  #12 (permalink)  
Antiguo 21/07/2011, 10:45
 
Fecha de Ingreso: septiembre-2008
Mensajes: 38
Antigüedad: 16 años, 2 meses
Puntos: 2
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

// Lo Llamé index.php Es el principal

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<title> INGRESAR DATOS CLIENTE</title>
<head>
<link rel="stylesheet" type="text/css" href="estilo.css" media="all">


<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;
return true;
}



</script>
</head>

<body style="color:#000000;background-color:#ffffff;" >

<div align="center"> <img src="celulares4.png" width="490" height="258" border="0">

<?php
//include('config.php');
include('cliente.php'); // Con Parentesis
include('classBD.php'); // Con Parentesis

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");
}
?>

<?php
extract($_GET);
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);
}
?>

<center><h1>INGRESO DE DATOS CLIENTE</h1>
<form method="GET" name="funcion"
onSubmit="return verifica();">

<H3>DATOS PERSONALES</H3>
<H4>CODIGO DEL CLIENTE:</H4>
<input type="text" name="codigo" size="20"><br>
<FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
<H4>NOMBRE COMPLETO:</H4>
<input type="text" name="nombre" size="20"><br>
<FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
<H4>CEDULA:</H4>
<input type="text" name="cedula" size="20"><br>
<FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
<H4>DIRECCION DEL CLIENTE:</H4>
<input type="text" name="direccion" size="20"><br>
<FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
<H4>TELEFONO DEL CLIENTE:</H4>
<input type="text" name="telefono" size="20"><br>
<FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
<br>


<input type="submit" value="grabar" name="grabar">
<input type="reset" name="borrar" value ="Borrar">
</form>
</center>
<center>
<br>
<BR>
<tr>
<td colspan="2">
<p align="center">

<p align="center"></td>
</tr>

</center>
<a href="salir.php">Desconectar</a>
</body>
</html>
  #13 (permalink)  
Antiguo 21/07/2011, 17:15
 
Fecha de Ingreso: abril-2011
Mensajes: 52
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Gracias hermano ahora si me registra fino pero tengo un problema q necesito hacerle un redireccionamiento a otro formulario. se que se hace con action="nombre.php", pero con este action no me registra. El codigo q me dejaste me funciona sin el action pero necesito redireccionar a otro.

de paso cree otra funcion en la clase cliente llamada datosequipo. donde guardaria lo del otro formulario dejo aca el codigo del formulario q me da el error.

Código PHP:
<html>
    <head>

         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
        <title> INGRESAR DATOS DEL EQUIPO</title>
        <LINK REL="stylesheet" type="text/css" href="estilo.css" media="all" <div align="center"> <img src="celulares6.png" width="400" height="364" border="0"  >
        <body style="color:#000000;background-color:#ffffff;" >
             
        <script type="text/javascript"  LANGUAGE="JAVASCRIPT">
            function verifica(){
     //validar el codigo
    if (document.funcion.marca.value==0)
    {
       alert("Debes Ingresar La marca del Telefono")
       document.funcion.marca.focus()
       return 0;
    }
     //validar nombre
    if (document.funcion.modelo.value==0)
    {
       alert("Debes Ingresar el modelo del Telefono")
       document.funcion.modelo.focus()
       return 0;
    }
    //validar Direccion
    if (document.funcion.imei.value==0)
    {
       alert("Debes Ingresar el imei del telefono")
       document.funcion.imei.focus()
       return 0;
    }

    //validar Telefono
    if (document.funcion.daño.value==0)
    {
       alert("Debes Ingresar el daño del Telefono")
       document.funcion.daño.focus()
       return 0;
    }


    //el formulario se envia
    alert("Procesando Su Facturacion");
    document.funcion.submit();
    document.funcion.opt.value=1;
}



        </script>
    </head>
    <?php
    
include('config.php');
    include(
'cliente.php'); // Con Parentesis
    
include('classBD.php'); // Con Parentesis

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");
}
?>
    <?php
extract
($_GET);
if (isset(
$grabar))//SI YA FUE EJECUTADO GRBAR SE VIENE PARA ACA SI NO NO
{
$ingresar = new cliente();
$ingresar->datosequipo($marca$modelo$imei$daño);

}
?>

        <center><h1>INGRESO DATOS DEL EQUIPO A REPARAR</h1>
        <form method="GET" name="funcion" 
              onSubmit="return verifica();">

        <H3>DATOS DEL EQUIPO</H3>
        <H4>MARCA:</H4>
        <input type="text" name="marca" size="20"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>MODELO:</H4>
        <input type="text" name="modelo" size="50"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>IMEI:</H4>
        <input type="text" name="imei"  size="15"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
        <H4>DAÑO:</H4>
        <input type="text" name="daño"  size="300"><br>
        <FONT COLOR="#FF0000">&nbsp;*CAMPO OBLIGATORIO &nbsp;</FONT><br>
      
         <input type="submit" value="grabar" name="grabar">
<input type="reset" name="borrar" value ="Borrar">
</form>
</center>    
<center>
<br>
<BR>
<tr>
<td colspan="2">
<p align="center">

<p align="center"></td>
</tr>

</center>
<a href="salir.php">Desconectar</a>
</body>
</html>

pero nada me da este errror que dice q estan indefinidas igual q la vez pasada :S me tiene loco y de paso dice que la classeBD el query esta indefinido tambien aca dejo el codigo de la classBD

Código PHP:
<?php
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;
        }


}
?>
este es el error que me da :S


Última edición por JenderxD; 21/07/2011 a las 19:36
  #14 (permalink)  
Antiguo 20/11/2011, 11:17
 
Fecha de Ingreso: febrero-2011
Mensajes: 3
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

hola amigo, trata de colocar @ delante de las variables: modelo, imei, daño y query y me comentas!
  #15 (permalink)  
Antiguo 20/11/2011, 11:35
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: Problema Inserccion a base de datos PHP orientado a objetos

Cita:
Iniciado por alicebermudez Ver Mensaje
hola amigo, trata de colocar @ delante de las variables: modelo, imei, daño y query y me comentas!
buenas alicebermudez el colocar @ delante de una variable o funcion no es buena práctica, ocultar el error no lo elimina, el tener variables indefinidas se elimina sencillamente definiendo las variables, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way

Etiquetas: html, mysql, orientado, php, registro, sql, tabla, formulario, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:18.