简体   繁体   中英

How to enable a log just before the php query

I am trying the approach of 'adding a log just before the php query' ; in effort to achieve the ability to print a 'time stamp' when my mySQL database has been updated.

my queries look like this.

 require_once('include/connect.php');

  $q = $_GET['q'];
  //echo $q;
  //$plan=substr($q,0,4);
  //$spec=substr($q,4);
  list($plan, $ptype, $spec) = explode('_', $q);
  //echo  $plan . ", " . $spec;
  //$query="SELECT vphp.tbl_provider_types.`TYPE` from coolDB.tbl_provider_types where vphp.tbl_provider_types.".$q." = 'Y';";
  $query= "SELECT tbl_sourcespecheader.specID, coolDB.tbl_sourcespecheader.Specialty_Header from vphp.tbl_provider_types left join coolDB.tbl_sourcespecheader on coolDB.tbl_provider_types.ID = coolDB.tbl_sourcespecheader.TypeID where coolDB.tbl_provider_types.ID = " . $spec . " and coolDB.tbl_sourcespecheader." . $plan . " = 'Y';";

  $result = mysqli_query($connection, $query);

  //Populate result in HTML which will be returned via AJAX
  echo "<h4>Please select from these " . $ptype . " specialties:</h4>";
  echo "<select id='type' multiple='' name='specialty'><option selected="selected" value="nospec"></option>";
  while($row = mysqli_fetch_array($result))
    {
      echo "<option value='" . $row['specID'] . "'><a href='#'  id='" . $row['specID'] . "' onclick='getSelected(this.id);return false'  style='text-decoration: none'>" . $row['Specialty_Header'] . "</a></option>";
    }
  echo "</select>";

  //Close database connection
  mysqli_close($connection); 

Better use triggers. You need to create log table to be able to insert all data you needed. Below is the example.

DELIMITER $$
CREATE TRIGGER before_employee_update 
    BEFORE UPDATE ON employees
    FOR EACH ROW 
BEGIN
    INSERT INTO employees_audit
        SET action = 'update',
        employeeNumber = OLD.employeeNumber,
        lastname = OLD.lastname,
       changedat = NOW(); 
END$$
DELIMITER ;

If you are using phpMyadmin. Go to that and find the trigger menu. There you can create triggers.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM