explnum_doc_id = $id_expl; if(!$this->explnum_doc_id){ $this->explnum_doc_nomfichier = ''; $this->explnum_doc_contenu = ''; $this->explnum_doc_mime = ''; $this->explnum_doc_extfichier = ''; $this->explnum_doc_url = ''; } else { $req = "select * from explnum_doc where id_explnum_doc='".$this->explnum_doc_id."'"; $res=pmb_mysql_query($req,$dbh); if(pmb_mysql_num_rows($res)){ $expl = pmb_mysql_fetch_object($res); $this->explnum_doc_nomfichier = $expl->explnum_doc_nomfichier; $this->explnum_doc_contenu = $expl->explnum_doc_data; $this->explnum_doc_mime = $expl->explnum_doc_mimetype; $this->explnum_doc_extfichier = $expl->explnum_doc_extfichier; $this->explnum_doc_url = $expl->explnum_doc_url; } else{ $this->explnum_doc_nomfichier = ''; $this->explnum_doc_contenu = ''; $this->explnum_doc_mime = ''; $this->explnum_doc_extfichier = ''; $this->explnum_doc_url = ''; } } } /* * Suppression */ public function delete(){ global $dbh; $req = "delete from explnum_doc where id_explnum_doc='".$this->explnum_doc_id."'"; pmb_mysql_query($req,$dbh); } /* * Enregistrement */ public function save(){ global $dbh; if(!$this->explnum_doc_id){ //Création $req = "insert into explnum_doc set explnum_doc_nomfichier='".addslashes($this->explnum_doc_nomfichier)."', explnum_doc_mimetype='".addslashes($this->explnum_doc_mime)."', explnum_doc_extfichier='".addslashes($this->explnum_doc_extfichier)."', explnum_doc_data='".addslashes($this->explnum_doc_contenu)."', explnum_doc_url='".addslashes($this->explnum_doc_url)."' "; pmb_mysql_query($req,$dbh); $this->explnum_doc_id = pmb_mysql_insert_id(); } else{ //Modification $req = "update explnum_doc set explnum_doc_nomfichier='".addslashes($this->explnum_doc_nomfichier)."', explnum_doc_mimetype='".addslashes($this->explnum_doc_mime)."', explnum_doc_extfichier='".addslashes($this->explnum_doc_extfichier)."', explnum_doc_data='".addslashes($this->explnum_doc_contenu)."', explnum_doc_url='".addslashes($this->explnum_doc_url)."' where id_explnum_doc='".$this->explnum_doc_id."'"; pmb_mysql_query($req,$dbh); } } /* * Charge le fichier */ public function load_file($file_info=array()){ if($file_info){ $this->explnum_doc_file = $file_info; } } /* * Analyse du fichier pour en récupérer le contenu et les infos */ public function analyse_file(){ if($this->explnum_doc_file){ create_tableau_mimetype(); $userfile_name = $this->explnum_doc_file['name'] ; $userfile_temp = $this->explnum_doc_file['tmp_name'] ; $userfile_moved = basename($userfile_temp); $userfile_name = preg_replace("/ |'|\\|\"|\//m", "_", $userfile_name); $userfile_ext = ''; if ($userfile_name) { $userfile_ext = extension_fichier($userfile_name); } move_uploaded_file($userfile_temp,"./temp/".$userfile_moved); $file_name = "./temp/".$userfile_moved; $fp = fopen($file_name , "r" ) ; $contenu = fread ($fp, filesize($file_name)); fclose ($fp) ; $mime = trouve_mimetype($userfile_moved,$userfile_ext) ; if (!$mime) $mime="application/data"; $this->explnum_doc_mime = $mime; $this->explnum_doc_nomfichier = $userfile_name; $this->explnum_doc_extfichier = $userfile_ext; $this->explnum_doc_contenu = $contenu; unlink($file_name); } } /* * Affecte un nom de fichier si il a été défini */ public function setName($nom=''){ if($nom) $this->explnum_doc_nomfichier = stripslashes($nom); } /* * Affiche les documents numériques dans un tableau */ public function show_docnum_table($docnum_tab=array(),$action){ global $charset; create_tableau_mimetype(); $display = ""; if($docnum_tab){ $nb_doc = 0; $display .= ""; for($i=0;$i $alt
".htmlentities($docnum_tab[$i]['explnum_doc_nomfichier'],ENT_QUOTES,$charset)."
".$docnum_tab[$i]['explnum_doc_mimetype']."
"; if($nb_doc == 4) { $display .= ""; $nb_doc=0; } } $display .= "
"; } return $display; } } ?>