Foros del Web » Programando para Internet » PHP »

Problema con oci_connect

Estas en el tema de Problema con oci_connect en el foro de PHP en Foros del Web. Hola! Voy al grano ^^. Me da el siguiente error al intentar conectarme a mi base de datos: Warning: oci_connect(): ORA-12154: TNS:could not resolve the ...
  #1 (permalink)  
Antiguo 25/08/2014, 09:28
 
Fecha de Ingreso: agosto-2014
Ubicación: Sevilla
Mensajes: 2
Antigüedad: 9 años, 8 meses
Puntos: 0
Problema con oci_connect

Hola! Voy al grano ^^. Me da el siguiente error al intentar conectarme a mi base de datos:

Warning: oci_connect(): ORA-12154: TNS:could not resolve the connect identifier specified in C:\xampp\htdocs\Trabajo2.0\checklogin.php on line 21

Fatal error: Call to a member function query() on a non-object in C:\xampp\htdocs\Trabajo2.0\checklogin.php on line 31

El código es el siguiente, les marco las lineas 21 y 31:

Código PHP:
Ver original
  1. <!doctype html>
  2. <html lang="es">
  3.     <head>
  4.         <TITLE>AAVV HUERTO PIQUIQUI</TITLE>
  5.         <link href="estilo.css" rel="stylesheet" type="text/css"/>
  6.         <meta charset=UTF-8" />
  7.  
  8.         <?php
  9.             session_start();
  10.             $dni= $_GET["dni"];
  11.             $contrasena = $_GET["pass"];
  12.             $_SESSION['fallo']=false;
  13.             $dni=Logueo($dni,$contrasena);
  14.  
  15.             function CrearConexionBD(){
  16.                 $host="oci:dbname=localhost/XE";
  17.                 $usuario="SYS";
  18.                 $password="SYS";
  19.                 $conexion=null;
  20.              
  21. (Linea 21)      $conexion=oci_connect($usuario,$password,$host);
  22.                 return $conexion;
  23.             }
  24.  
  25.             function CerrarConexionBD($conexion){
  26.                 $conexion=null;
  27.             }
  28.  
  29.             function Logueo($dni,$contrasena){
  30.                 $conexion=CrearConexionBD();
  31. (Linea 31)      $stmt = $conexion -> query("SELECT * FROM A_SOCIO WHERE DNI='$dni' AND PASS='$contrasena'");
  32.                 $cont=0;
  33.  
  34.                 foreach ($stmt as $user) {
  35.                     $cont++;
  36.                 }
  37.                
  38.                 if($cont==1){
  39.                     $_SESSION["logueado"] = $email;
  40.                 }else{
  41.                     $_SESSION["fallo"] = true;
  42.                 }
  43.                
  44.                 CerrarConexionBD($conexion);
  45.        
  46.                 return $dni;
  47.             }
  48.         ?>
  49.     </head>
  50.     <body>
  51.     <div id="pagina">
  52.  
  53.  
  54.       <div class="cuadro">
  55.         <div class="titulo">
  56.         </div>
  57.       </div>
  58.       <div class="separador"></div>
  59.       <div class="cuadro">
  60.         <?php
  61.           if(isset($_SESSION['logueado'])) {
  62.             echo '<p>Hola se ha logueado correctamente. Pulse <a href="index.php"<p>aquí</a> para volver al inicio.</p>';
  63.           }
  64.           if($_SESSION["fallo"] == true){
  65.             echo '<p>Tu usuario o contraseña no son correctos. Pulse <a href="mi-cuenta.php"<p>aquí</a> para volver a intentar loguearte.</p>';
  66.           }
  67.         ?>
  68.       </div>
  69.  
  70.  
  71.     </div>
  72.   </body>
  73. </html>

Me surge la duda de si no hay que poner el workspace en el que está la base de datos. Bueno cabe decir que instalé xamp, y que uso Oracle Database 11g y Apache. Gracias!

Última edición por Triby; 25/08/2014 a las 22:32 Razón: Código en highlight
  #2 (permalink)  
Antiguo 25/08/2014, 22:39
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema con oci_connect

En la línea 21 obtienes el error porque no se puede establecer la conexión; si necesitas más info, revisa el manual de PHP, http://php.net//manual/es/function.oci-connect.php, ahí encontrarás información útil para saber como especificar la cadena de conexión (lo que tienes en la variable $host).

El error de la línea 31 desaparecerá en cuanto soluciones el problema de conexión; siempre y cuando no exista error en la consulta!
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: html, select
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 17:29.