2015-07-03 11 views
5

Próbuję uzyskać wartość id z tabeli o nazwie usuario w bazie danych, przekazując $ username jako parametr, funkcja $ conexion-> connect() zwraca obiekt mysqli. Funkcje nie dają mi błędów, ale nie zwracają wartości z bazy danych. Czy czegoś brakuje? lub popełniam jakiś błąd. Dzięki za pomoc.pobierz wartości mysqli_fetch

public function checkUserNameExists($username){ 
    $conexion = new Connection(); 
    $conexion->connect(); 
    $query = "select id from usuario where username = ?"; 
    $reg = 0; 
    $stmt= $conexion->connect()->prepare($query); 
    $stmt->bind_param('s',$username); 

    $stmt->execute(); 
    $stmt->bind_result($id); 
    while($stmt->fetch()){ 
     $reg = $id; 
    } 
    $stmt->close(); 
    return $reg; 
} 

Jest to funkcja connect(), co znajduje się w pliku klasy „Połączenia”

public function connect(){ 
    $mysqli = new mysqli($this->db_host,$this->db_user,$this->db_pass,$this->db_name); 
    if (mysqli_connect_errno()) { 
     printf("Connect failed: %s\n", mysqli_connect_error()); 
     exit(); 
    } 
    return $mysqli 
} 

Odpowiedz

1
public function checkUserNameExists($username){ 
    $conexion = new Connection(); 
    $conn = $conexion->connect(); 
    $query = "select id from usuario where username = ?"; 
    $reg = 0; 
    $stmt= $conn->prepare($query); 
    $stmt->bind_param('s',$username); 

    $stmt->execute(); 
    $stmt->bind_result($id); 
    while($stmt->fetch()){ 
     $reg = $id; 
    } 
    $stmt->close(); 
    return $reg; 
} 

należy przechowywać wartości zwracanej nowego mysqli w zmiennej, a następnie użyj ta zmienna do tworzenia zapytań lub przygotowań od.

+0

Wielkie dzięki, działa. – ElijahCarrillo

Powiązane problemy