W PHP, próbuję wykonać długie zapytanie MySql, które zależy od danych wprowadzanych przez użytkownika. Jednak moje zapytanie nie powiedzie się z następującym komunikatem,jak wyświetlić błąd MySql w php
"Query Failed".
Właściwie mam wydrukowane tę wiadomość, gdy kwerenda nie powiedzie się, ale mam twardy czas szuka Powodem awarii. Niestety nie mogłem go znaleźć, ponieważ błąd nie został określony na stronie internetowej. Moje pytanie brzmi, czy istnieje sposób wyświetlenia komunikatu o błędzie, który spowodował niepowodzenie na stronie internetowej. Dziękuję Ci.
Oto mój kod,
$from= "Findings";
$where="";
if($service!= null)
{
$from = $from . ", ServiceType_Lookup";
$where= "Findings.ServiceType_ID= ServiceType_Lookup.ServiceType_ID AND ServiceType_Name= ". $service;
if($keyword!= null)
$where= $where . " AND ";
}
if($keyword != null)
{
$where= $where . "Finding_ID LIKE '%$keyword%' OR
ServiceType_ID LIKE '%$keyword%' OR
Title LIKE '%$keyword%' OR
RootCause_ID LIKE '%$keyword%' OR
RiskRating_ID LIKE '%$keyword%' OR
Impact_ID LIKE '%$keyword%' OR
Efforts_ID LIKE '%$keyword%' OR
Likelihood_ID LIKE '%$keyword%' OR
Finding LIKE '%$keyword%' OR
Implication LIKE '%$keyword%' OR
Recommendation LIKE '%$keyword%' OR
Report_ID LIKE '%$keyword%'";
}
$query = "SELECT Finding_ID,
ServiceType_ID,
Title,
RootCause_ID,
RiskRating_ID,
Impact_ID,
Efforts_ID,
Likelihood_ID,
Finding,
Implication,
Recommendation,
Report_ID FROM ".$from . " WHERE " . $where;
echo "wala 2eshiq";
$this->result = $this->db_link->query($query);
if (!$this->result) {
printf("Query failed: %s\n", mysqli_connect_error());
exit;
}
$r = mysqli_query($this->db_link, $query);
if($r==false)
printf("error: %s\n", mysqli_errno($this->db_link));
Możesz po prostu użyć: '$ this-> db_link-> error', aby uzyskać ostatni komunikat o błędzie. Dla wszystkich błędów użyj '$ this-> db_link-> lista_błędów'. – hakre