이것이 멍청한 질문 인 경우 사면 해주십시오.sql_fetch_array에서 함수에 값을 삽입하는 데 도움이 필요합니다.
폴더의 .php 파일에서 공용 함수 delete()를 호출하려고합니다. fileB.php 및 fileA.php 대중 함수를 호출하는 데 사용
공공 기능 삭제는()
fileA.php
에 내가 다른 파일을 생성합니다.그러나 코드가 작동하지 않는 것 같습니다.
이 내가 fileB.php에있는 것입니다 :
function crondel() {
$sql_del2 = new Item;
$oc_t_item_description="oc_t_item_description";
$sql_del="SELECT * FROM $tbl_name WHERE UNIX_TIMESTAMP($expiry_date) < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))";
$result_del = mysql_query($sql_del);
while($row = mysql_fetch_array($result_del)) {
$itemid = $row['pk_i_id'];
$secret = $row['s_secret'];
//$sql_del2 = "DELETE FROM $oc_t_item_description WHERE
//fk_i_item_id = '$criteria'";
//$result_del2 = mysql_query($sql_del2);
}
$secret_new=$secret;
$itemid_new=$itemid;
$result_del2 = $sql_del2->delete($secret_new, $itemid_new);
}
문제는 스크립트가 exceuted되고 오류가보고되지 않았다이다. 그러나 예상 된 결과가 나오지 않았습니다.
나는이 문제를 위의 호출 된 public function delete()에 mysql_fetch_array에서 얻은 값을 삽입한다고 생각한다.
그 외에도 다른 이유가 무엇인지 생각할 수 없습니다. 감사합니다. 감사!!
///// 편집 //////
이 기능은 다음과 같습니다) (삭제
공공 기능 ($ 비밀, $ 해당 itemId) 삭제 { $ 항목 = $ this- > 매니저 -> findByPrimaryKey ($ itemId);
osc_run_hook('before_delete_item', $itemId);
if($item['s_secret'] == $secret) {
$this->deleteResourcesFromHD($item['pk_i_id']);
Log::newInstance()->insertLog('item', 'delete', $itemId, $item['s_title'], $this->is_admin ? 'admin' : 'user', $this->is_admin ? osc_logged_admin_id() : osc_logged_user_id());
$result = $this->manager->deleteByPrimaryKey($itemId);
if($result!==false) {
osc_run_hook('after_delete_item', $itemId, $item);
}
return $result;
}
return false;
}
어딘가에 fileA.php를'include' 또는'require'해야합니다. 그러나 당신은'Item' 클래스에'-> delete()'가 정의되어서는 안되며 객체를 사용하고 있습니까? – Paul
어떻게 디버깅하셨습니까? 'var_dump (..) '에 의해이 이론을 테스트 했습니까? – Sumurai8
또한 마지막 항목 만 삭제한다고 가정합니다. – Sumurai8