2015-06-19 32 views
0

我創建一個函數來找到所有在我的數據庫名字和姓氏的所有我想,如果這些數據是已經存在我只是想輸出錯誤信息功能,如果數據是在數據庫中

我的問題是如何創建一個函數來檢查數據是否已經存在?

這是我的函數來查找名和姓的所有數據。

function find_student_by_firstname($firstname){ 
    global $con; 

    $safe_firstname = prep($firstname); 

    $sql = "SELECT * "; 
    $sql .= "FROM studeprofile "; 
    $sql .= "WHERE FirstName = '{$safe_firstname}' "; 
    $sql .= "LIMIT 1"; 
    $student_set = mysqli_query($con, $sql); 
    confirm_query($student_set); 
    if($student = mysqli_fetch_assoc($student_set)){ 
    return $student; 
    } else { 
    return null; 
    } 
} 

function find_student_by_lastname($lastname){ 
    global $con; 

    $safe_lastname = prep($lastname); 

    $sql = "SELECT * "; 
    $sql .= "FROM studeprofile "; 
    $sql .= "WHERE LastName = '{$safe_lastname}' "; 
    $sql .= "LIMIT 1"; 
    $student_set = mysqli_query($con, $sql); 
    confirm_query($student_set); 
    if($student = mysqli_fetch_assoc($student_set)){ 
    return $student; 
    } else { 
    return null; 
    } 
} 

這是我目前檢查數據是否已經存在的函數。

function match_fistname_lastname($lastname, $firstname){ 
    $student_firstname = find_student_by_firstname($lastname); 
    if($student_firstname){ 
    find_student_by_lastname($lastname); 
    } else { 
    return false; 
    } 
} 
+1

您知道有關SELECT查詢'和'操作?只要選擇那些姓氏與'姓氏'姓氏匹配的條目即可。 – arkascha

+0

謝謝,你的建議有助於解決我的問題。 – jhunlio

回答

0

如果你的意思是「數據已經存在」一個人是在匹配名字和姓氏數據庫,您不必執行兩個查詢。 使用and在MySQL中是這樣的:

function find_student($firstname, $lastname){ 
    global $con; 

    $safe_firstname = prep($firstname); 
    $safe_lastname = prep($lastname); 

    $sql = "SELECT * "; 
    $sql .= "FROM studeprofile "; 
    $sql .= "WHERE FirstName = '{$safe_firstname}' and LastName = '{$safe_lastname}' "; 
    $sql .= "LIMIT 1"; 
    $student_set = mysqli_query($con, $sql); 
    confirm_query($student_set); 
    if($student = mysqli_fetch_assoc($student_set)){ 
    return $student; 
    } else { 
    return null; 
    } 
}