Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - ton gas

#1
Hola Comunidad!!!!

Tengo un pequeño conflicto en el proyecto en el que me encuentro trabajando actualmente.

Necesito hacer un login de usuario con sesiones y que cada usuario, segun sus privilegios, tenga acceso a un area diferente del sitio web.

El conflicto es que lo tengo que hacer compatible con SQLSRV ya que la empresa para la que trabajo no maneja MYSQL.

Ya logre que conecte con el servidor, sin embargo aun no logro hacer que conecte y verifique los datos de ingreso en la base de datos.

Me estoy basando en el manual de PHP y de la extension SQLSRV http://php.net/manual/en/book.sqlsrv.php

Este código esta escrito para conectarbases de datos MYSQL pero lo necesito transformar para que funciione con SQLSRV y Me sale este error:

Citar
( ! ) Warning: sqlsrv_query() expects at least 2 parameters, 1 given in C:\wamp\www\acceso\class\dbactions.php on line 10
Call Stack
#   Time   Memory   Function   Location
1   0.0011   144536   {main}( )   ..\session_init.php:0
2   0.0360   165856   Users->login_in( )   ..\session_init.php:21
3   0.0360   166208   Database->select( )   ..\users.php:22
4   0.0360   166264   sqlsrv_query ( )   ..\dbactions.php:10

y este otro:

Citar( ! ) Warning: sqlsrv_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\acceso\class\users.php on line 24
Call Stack
#   Time   Memory   Function   Location
1   0.0011   144536   {main}( )   ..\session_init.php:0
2   0.0360   165856   Users->login_in( )   ..\session_init.php:21
3   0.0362   165464   sqlsrv_num_rows ( )   ..\users.php:24


Este es archivo donde llamo a las clases y donde inicio

Código (php) [Seleccionar]
<?php

//llamado a la clase que hace la conexcion a la base de datos
require'class/config.php';
//LLamado a la clase Usuarios para realizar el inicio de sesion
require'class/users.php';
//llamado a la clase que ejecutará los queries de Consulta, Adición y Eliminación
require'class/dbactions.php';
//llamado a la clase encargada de las sesiones
require'class/sessions.php';

//creación o instanciamiento de un objeto de la Clase Connection
$objConn = new Connection();
//objeto de la clase users
$objUser = new Users();

//llamamos la funcion que nos conecta a la base de datos
$objConn->get_connected();

//function que realiza la verificación de usuarios e inicio de sesion
$objUser->login_in();



?>


Esta es mi clase de users, donde tengo uno o varios errores de compatibilidad


Código (php) [Seleccionar]
<?php

class Users{

public $objDb;
public $objSe;
public $result;
public $rows;
public $useropc;

public function __construct(){

$this->objDb = new Database();
$this->objSe = new Sessions();

}

public function login_in(){

$query "SELECT * FROM users,profiles WHERE users.loginUsers = '".$_POST["usern"]."' 
AND users.passUsers = '"
.$_POST["passwd"]."' AND users.idprofile = profiles.idProfile ";
$this->result $this->objDb->select($query);

$this->rows sqlsrv_num_rows($this->result);
if($this->rows 0){

if($row=sqlsrv_fetch_array($this->result)){

$this->objSe->init();
$this->objSe->set('user'$row["loginUsers"]);
$this->objSe->set('iduser'$row["idUsers"]);
$this->objSe->set('idprofile'$row["idprofile"]);

$this->useropc $row["nameProfi"];

switch($this->useropc){

case 'Admin':
header('Location: user/index.php');
break;

case 'Supervisor':
header('Location: http://www.facebook.com');
break;

case 'Comex':
header('Location: http://www.google.com');
break;

}

}

}else{

echo "todo mal";

}

}

}

?>


Esta es mi class DBactions

Código (php) [Seleccionar]
<?php

class Database{

public $result;

public function __construct(){ }

public function select($query){
return $this->result sqlsrv_query($query);


}

}

?>


Este es mi class sesions

Código (php) [Seleccionar]
<?php

class Sessions{

public function __construct(){ }

public function init(){
@session_start();
}

public function set($varname$value){

$_SESSION[$varname] = $value;

}

public function destroy(){

session_unset();
session_destroy();

}

}

?>


Este es mi archivo config, este si conecta y cumple su funcion


Código (php) [Seleccionar]
<?php

class Connection{

//variables para los datos de la base de datos
public $server;
public $userdb;
public $passdb;
public $dbname;

public function __construct(){

//Iniciar las variables con los datos de la base de datos
$this->server 'GOCHOA\SQLEXPRESS';
$this->userdb 'sa';
$this->passdb 'Argenm3x';
$this->dbname 'prueba';


}

public function get_connected(){


$info = array('Database'=>$this->dbname'UID'=>$this->userdb'PWD'=>$this->passdb);
$conexion sqlsrv_connect($this->server$info);

if ($conexion) {

echo "Conexion establecida. <br />";
}else {
echo "conexion invalida.<br />";
die( print_r(sqlsrv_errors(), true));
}



}

}


?>


AYUDA POR FAVOR mi mail es censurado

Mod: