Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/04/2010, 08:33
henryc33
 
Fecha de Ingreso: abril-2010
Mensajes: 30
Antigüedad: 14 años, 6 meses
Puntos: 0
tengo problemas al querer inserta en mysql

hola tengo un problema no se como insertar datos en php utilizando POO
por ejemplo cree una clase conexion
Código PHP:
<?php
class Conexion{

public 
$conn;
public 
$servidor;
public 
$usuario;
public 
$password;
public 
$nombreDB;

function 
__construct(){

 
$this->servidor "localhost";
 
$this->usuario "root";
 
$this->password "root";
 
$this->nombreDB "colegio";
    echo 
"el constructor fue inicializado correctamente<br>";  
}
function 
conexion(){
    if (!isset(
$this->conn)){   
       
$this->conn = (mysql_connect($this->servidor,$this->usuario,$this->password)) or die(mysql_error());   
       
mysql_select_db($this->nombreDB,$this->conn) or die(mysql_error()); 
       echo 
"la conexion fue satisfactoria<br>";  
       
//exit();
       
}
      else {
      echo 
"la conexion fue fallida<br>"
      echo 
'MySQL Error: ' mysql_error();   
             }
}
}
?>
esta la llamo en mi clase aula:

Código PHP:
<?php
include ("conexion.php");

class 
Aula{

  private 
$nroaula;
  private 
$gradoaula;
  private 
$seccaula;
 
 function 
__construct($nroaula,$gradoaula,$seccaula){
    
    
$this->nroaula $nroaula;
    
$this->gradoaula $gradoaula;
    
$this->seccaula $seccaula;  
  }
 
//metodos accesores
function setNro_aula($nroaula){
  
$this->nroaula $nroaula;
}
function 
getNro_aula(){
   return 
$this->nroaula;
}
function 
setGrado_aula($gradoaula){
     
$this->grado_aula $gradoaula;
}
function 
getGrado_aula(){
   return 
$this->gradoaula;
}
function 
setSecc_aula($seccaula){
 
$this->seccaula $seccaula;
}
function 
getSecc_aula(){
   return 
$this->seccaula;
}
//funcion para recibir los datos
function inserta(){
    echo
"dentro de inserta";
           
$link = new conexion();
           
$link->conexion();
           
           
///if ($link->conexion()==true){
               
echo"dentro de insersion";
               
mysql_query("INSERT INTO aula(nro_aula,grado_aula, secc_aula) VALUES ($this->nroaula,$this->grado_aula,'$this->seccaula')",$link);
               echo
"terminando inserta";
           
//}
}
}
?>
e intento crear mi objeto aca en este script donde recojo los datos de el formulario para enviarlos a la clase

Código PHP:
<?php
if($_POST['submit']=="submit"){
          echo
"dentro de captura";
         
$nroaula $_POST['txtNroAula'];
         
$gradoaula $_POST['txtGrado'];
         
$seccaula $_POST['txtSeccion'];
         
         echo
"$nroaula";
         echo
"$gradoaula";
         echo
"$seccaula";
         include(
"classCreaAula.php");
         
$creaaula = new Aula($nroaula,$gradoaula,$seccaula);
         
$creaaula->inserta();
    }

?>
mi formulario donde recojo los datos son el siguiente:

Cita:
<body>
<form id="enviaAula" name="form1" method="POST" action="probando.php">
<table width="233" border="1">
<tr><td width="71"><div align="right">Nro. Aula </div></td>
<td width="146"><label><input type="text" name="txtNroAula" id="txtNroAula"/></label></td>
</tr>
<tr> <td><div align="right">Grado</div></td>
<td><label><input type="text" name="txtGrado" id="txtGrado" /></label></td>
</tr>
<tr><td><div align="right">Secci&oacute;n</div></td>
<td><label><input type="text" name="txtSeccion" id="txtSeccion" /></label></td>
</tr>
<tr>
<td><label><input type="reset" name="Reset" value="Reset" />
</label></td>
<td><label><input type="submit" name="submit" value="submit" /></label></td>
</tr>
</table>
</form>
</body>
y el error que obtengo el es siguiente:

inserte los siguientes datos:

Nro Aula: 15
Grado:9
seccion: C

Cita:

dentro de captura159C dentro de insertael constructor fue inicializado correctamente
la conexion fue satisfactoria
dentro de insersion

error:

Warning: mysql_query() expects parameter 2 to be resource, object given in C:\xampp\htdocs\PROYECTO_WEB\classCreaAula.php on line 51
terminando inserta

espero q me puedan ayudar soy muy nuevo en esto y haber si puedo solucionar esto

gracias

Última edición por henryc33; 28/04/2010 a las 09:22