Foros del Web » Programando para Internet » PHP »

PHP OO error de llamada de la funcion conectar

Estas en el tema de error de llamada de la funcion conectar en el foro de PHP en Foros del Web. el error es el siguiente: Fatal error: Call to undefined function conectar() in C:\AppServ\www\proyecto\inicio.php on line 3. conectar.php Código PHP: <?php class  conectar {    var   ...
  #1 (permalink)  
Antiguo 31/05/2011, 08:59
 
Fecha de Ingreso: mayo-2011
Mensajes: 1
Antigüedad: 13 años, 6 meses
Puntos: 0
error de llamada de la funcion conectar

el error es el siguiente:
Fatal error: Call to undefined function conectar() in C:\AppServ\www\proyecto\inicio.php on line 3.

conectar.php
Código PHP:

<?php

class conectar{
   var  
$con;
   
   function 
conectar(){
   
$sevidor="localhost";
   
$baseDato="clinica";
   
$usuario="root";
   
$password="123456";
   
$this->con mysql_connect($sevidor,$usuario,$password);
    
mysql_select_db($baseDato,$this->con);
   }
   
#la  funcion  select es para  hacer consultas   
function select($sql)
{
$tb=mysql_query($sql,$this->con);
return  
$tb;
}

function 
siguiente($tb)
{
    
$filas mysql_fetch_array($tb);
    return 
$filas;
    
}

function 
closeselect ($tb)
{
    
mysql_free_result($tb);
}



#el  execute es  para  incluir modificar eliminar ...
function execute($sql)
{
mysql_query($sql,$this->con);
$n=mysql_affected_rows();
return 
$n;
}
}
?>
inicio.php

Código PHP:

<?php    
  
include_once("conectar.php"); 
   
$link=conectar();
   
$login=$_POST['usuario'];
   
$pas=$_POST['contrasena'];
   
$sql="SELECT * FROM usuarios WHERE usuario='$login' and contrasena='$pas'";
   
$result=mysql_query($sql,$link);

if(isset(
$_POST['Enviar'])) 
  { 
/* @var $fila AppendIterator */
if($filas=mysql_fetch_assoc($result))
{
    
    
header ("Location: modulo.php");
    
    }
    else
    {
        
?>
        <script language="javascript">
        alert("password o login invalido");
        
        </script>
         <?
        
}     
  }

?>
por favor este codigo es de vaildacion de usuario quien pueda ayudarme con este codigo le agradecere bastante....
  #2 (permalink)  
Antiguo 31/05/2011, 09:02
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: error de llamada de la funcion conectar

Porque estás usando clase, lo debes llamar como se llaman los métodos. Es decir
Código PHP:
Ver original
  1. <?php
  2. class Foo
  3. {
  4.     public function bar()
  5.     {
  6.         return __METHOD__;
  7.     }
  8. }
  9.  
  10. $obj = new Foo;
  11. echo $obj->bar();
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 31/05/2011, 12:34
Avatar de Huacho12  
Fecha de Ingreso: septiembre-2008
Ubicación: Isla Mujeres Q. Roo
Mensajes: 175
Antigüedad: 16 años, 3 meses
Puntos: 10
Respuesta: error de llamada de la funcion conectar

Hola!!!

gochozamb,

Estoy de acuerdo con lo que comenta abimaelrc, solo que asi como lo pone es si tu clase esta en el mismo archivo el cual vas a trabajar esas funciones,

ahora bien si lo que deseas es mandar a llamar los metodos de esa clase en otro archivo lo harias de la sigueinte manera:

<?php
//Incluyes el archivo donde esta el codigo de tu clase
include_once(tuDireccion/ArchivodetuClase.php);

//Creas la instancia de tu clase

$tuConexion = new nombre_de_tu_Clase();

$tuConexion-> tuMetodo();//Con esto haces uso de tu metodo de tu clase

En estos link te puedes orientar un poco mas sobre el uso de clases y como llmarlas:

http://www.webtaller.com/construccio...clases-php.php

http://groups.google.com/group/php--...930a3e2f99565f




?>
__________________
Solo se... que no se nada!!! 0_o

Etiquetas: funcion, llamada
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 05:05.