作者 主題: 請問 如何將抓出來的圖片全部刪除掉?  (閱讀 3112 次)

0 會員 與 1 訪客 正在閱讀本文。

nody

  • 可愛的小學生
  • *
  • 文章數: 14
    • 檢視個人資料
各位前輩您好:

請問 如何將抓出來的圖片全部刪除掉?

以下是我的程式碼

if ((isset($_GET['blog_no'])) && ($_GET['blog_no'] != "") && (isset($_GET['delSure']))) {
  $deleteSQL = sprintf("SELECT newspic_pic FROM `newspic` WHERE blog_no = %s",
                       GetSQLValueString($_GET['blog_no'], "int"));
  mysql_select_db($database_blogConn, $blogConn);
  $Result1 = mysql_query($deleteSQL,$blogConn) or die(mysql_error());

  @unlink('images/news/'.'newspic_pic');

  $deleteGoTo = "adminmsg.php";
  if (isset($_SERVER['QUERY_STRING'])) {
    $deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
    $deleteGoTo .= $_SERVER['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $deleteGoTo));
}

圖片檔案newspic_pic抓出來之後,怎麼用unlink刪除掉?
存入陣列刪除嗎?
該怎麼寫呢?
謝謝。。。

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4052
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
Re: 請問 如何將抓出來的圖片全部刪除掉?
« 回覆 #1 於: 2013-07-30 16:00 »
把 unlink 的對象寫成變數,然後先 echo 出來看看,

接下來自己用 rm 接上圖檔路徑、檔名,看設定是否正確

最後才放入 php 批次執行
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

nody

  • 可愛的小學生
  • *
  • 文章數: 14
    • 檢視個人資料
Re: 請問 如何將抓出來的圖片全部刪除掉?
« 回覆 #2 於: 2013-07-30 16:08 »
請問前輩你說的方法程式碼大概的架構可以寫給我看看嗎> <

感恩.

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4052
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
Re: 請問 如何將抓出來的圖片全部刪除掉?
« 回覆 #3 於: 2013-07-30 16:25 »
@unlink('images/news/'.'newspic_pic');

改成

$path = 'images/news/'.'newspic_pic';
echo $path; // images/news/aaaxxx

拿 $path 到指令行,執行 rm images/news/aaaxxx
錯誤就直接在指令行改,改到正確的路徑及檔名,在拉回到 php 執行
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

nody

  • 可愛的小學生
  • *
  • 文章數: 14
    • 檢視個人資料
Re: 請問 如何將抓出來的圖片全部刪除掉?
« 回覆 #4 於: 2013-07-30 16:37 »
我有一個刪除的按鈕 會傳送blog_no進去給我貼的那段PHP接收

這是我的資料表和欄位
資料表 newspic
欄位   newspic_id  blog_no  newspic_pic  newspic_title

妳說的執行rm是什麼有點不太懂ˊˋ(小弟才疏學淺.)

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4052
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
Re: 請問 如何將抓出來的圖片全部刪除掉?
« 回覆 #5 於: 2013-07-30 21:51 »
rm == Linux 刪除檔案的指令

如果是 Windows 環境,那就是 del

=============

我把 php 當作一種「客制流程」的工具,所以要寫程式前,都必須先個別執行,成功後才開始使用 php 來「組裝」

你那個程式一看就知道是抄書的,趕快把書闔起來,然後到 php 官網 www.php.net ,去瞭解每個指令、function 然後組裝成自己的程式
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

nody

  • 可愛的小學生
  • *
  • 文章數: 14
    • 檢視個人資料
Re: 請問 如何將抓出來的圖片全部刪除掉?
« 回覆 #6 於: 2013-08-03 09:23 »
我改了一下方式

資料表 newspic
欄位 newspic_id blog_no newspic_pic

資料庫抓取
mysql_select_db($database_blogConn, $blogConn);
$query_Recordset1 = "SELECT * FROM newspic";
$Recordset1 = mysql_query($query_Recordset1, $blogConn) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);

按鈕
<td>
<a href="admin_newsDel1.php?blog_no=<?php echo $row_Recordset1['blog_no']; ?>&amp;newspic_pic=<?php echo $row_Recordset1['newspic_pic']; ?>&amp;delSure=1" onclick="tfm_confirmLink('確定刪除本資料?');return document.MM_returnValue">
</td>

刪除的PHP
if ((isset($_GET['blog_no'])) && ($_GET['blog_no'] != "") && (isset($_GET['delSure']))) {
@unlink('images/news/'.$_GET["newspic_pic"]);
}


這樣只會刪到最新那張圖片,無法刪除特定編號下的所有圖片,請問哪裡需要修改呢?
感恩。