我想避免插入重複日期到我的分貝。所以我寫了一個名爲avoid_redundant()的函數。這個函數必須檢查數據是否存在。當它存在時返回false並阻止插入。我在互聯網上挖掘,以找出爲什麼mysqli_affected_rows()返回-1,但發現有關查詢。我的查詢沒問題。我很困惑。返回-1當我運行mysqli_affected_rows
這裏是我的簡單代碼。
<?php
class Database{
private username;
private pass;
private database;
private server;
public function __constructor(){
$this->username='root';
$this->pass='';
$this->database='myDb';
$this->server='localhost';
}
public function init(){
$link=mysqli_connect($this->server,$this->username,$this->pass,$this->database) or die('unable to connect'. mysqil_error());
if ($link)
return $link;
}
public function avoid_redundant($title,$desc){
$link=$this->init();
$query='SELECT * FROM mytbl WHERE title LIKE "%'.$title.'%" AND desc LIKE "%'.$desc.'%"';
$result=mysqli_qurey($link,$query) or die(mysqli_error());
$row=mysqli_affected_rows($link);
if($row>0)
return FALSE;
return TRUE;
}
}
// IN THE MAIN
$db= new Database();
$title=mysqli_real_escape_string(//mytitle);
$desc=mysqli_real_escape_string(//mydescription);
if($db->avoid_redundat($title,$desc)){
//do the rest.....
}
?>
您可以嘗試重新閱讀PHP手冊中的mysqli_affected_rows()函數描述嗎? –
@YourCommonSense。你爲什麼給一個不好的印記?我再讀一遍。我的問題是什麼? –
嘗試再讀一遍。實際上只有很少的讀數,幾乎沒有幾個字。 –