[問題]如何判斷圖檔是否存在?? [已解決]

phpBB 2 MOD Support
無論是官方或非官方認證之外掛,安裝與使用問題討論。
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

主題已鎖定
超級牛
星球普通子民
星球普通子民
文章: 14
註冊時間: 2003-12-06 00:13
來自: Earth

[問題]如何判斷圖檔是否存在?? [已解決]

文章 超級牛 »

是這樣的,
弟在目錄裡多放了一個使用者相片的目錄,
但是, 並不是每一位使用者都願意上傳相片進來,
所以~
有沒有辨法有一個判斷方式是,
當使用者有上傳JPG相片時, 就秀使用者相片,
而當使用者未上傳相片時就預設一張相片,

對了~ 這個功能並不是 "頭像預設"
而是弟在個人資料內另開的一個圖檔連結,
假設使用者名稱是 "ABC", 那麼就會將ABC.JPG秀在個人資料內!!

PS, 由於弟的站是在公司的Intranet上, 所以沒辨法公布!!
最後由 超級牛 於 2004-02-04 13:33 編輯,總共編輯了 2 次。
Martinet
竹貓忠實會員
竹貓忠實會員
文章: 850
註冊時間: 2003-06-09 21:58
聯繫:

文章 Martinet »

看你的文章...感覺是 你已經作了上傳的介面?......
如果是的話....
作得出來這個怎麼會不知道這個怎麼寫=.=!!!.....................

如果你以為上傳大頭照跟選擇頭像不一樣的話......
我可以告訴你 , 直接來作的話那是不行的@"@

...當然改程式就行....
超級牛
星球普通子民
星球普通子民
文章: 14
註冊時間: 2003-12-06 00:13
來自: Earth

文章 超級牛 »

[quote="Martinet"]看你的文章...感覺是 你已經作了上傳的介面?......
quote]

其實因為是在IntraNET內的, 所以我並沒有做上傳介面,
而是使用資料夾分享的方式來讓使用者自行將杷片置入,
也就是因為這樣, 我才沒辨法控制使用者是不是有上傳相片,
所以我才須要能有一個方法來判斷圖檔是不是存在!!
Martinet
竹貓忠實會員
竹貓忠實會員
文章: 850
註冊時間: 2003-06-09 21:58
聯繫:

文章 Martinet »

超級牛 寫: 其實因為是在IntraNET內的, 所以我並沒有做上傳介面,
而是使用資料夾分享的方式來讓使用者自行將杷片置入,
也就是因為這樣, 我才沒辨法控制使用者是不是有上傳相片,
所以我才須要能有一個方法來判斷圖檔是不是存在!!
那這樣沒辦法吧..........因為這樣使用者可以上傳一堆不同檔名的東西...

基本上..以我現有的知識 , 要判斷他有沒有上傳..需要在上傳時動手腳 , 也就是說需要一個上傳介面..
GeniusKiKi
竹貓忠實會員
竹貓忠實會員
文章: 1086
註冊時間: 2003-10-28 14:50

文章 GeniusKiKi »

http://phpbb-tw.net/phpbb/viewtopic.php?t=21737

參考看看這篇文章
然後每個用戶開一個資料夾給他(木亥火暴)
裡面都丟一個這樣的檔案
這樣也許會簡單許多
再也不當爛好人...
好人是小白轉型成大白的墊腳石...
bu
版面管理員
版面管理員
文章: 443
註冊時間: 2003-02-23 12:46
來自: 25° 4′N 121° 29′E
聯繫:

文章 bu »

try...

[php]<?php
$username=userdata['username'];
$path='path/to/it/' . $username . '.gif';

if (file_exists($path)) {
$xximg = $path;
} else {
$xximg = 'defimg.gif';
}

?>[/php]

您看看是不是您要的... ^^"
*譯文資料在phpBB 技術文件
bu.femto-size
*和我聯絡,請寄 or Google Talk 圖檔
*作品: Intergrated Toplist & Message Can
超級牛
星球普通子民
星球普通子民
文章: 14
註冊時間: 2003-12-06 00:13
來自: Earth

文章 超級牛 »

bu 寫:try...


您看看是不是您要的... ^^"
我剛試了這個語法,
在 profile.php 的最下方加了

// Cho 判斷使用者圖檔是否存在\r
$username=userdata['username'];
$userimg1='../Pictures/UserPics/' . $username . '.jpg';
$userimg2='../Pictures/UserPics/no-image.gif';

if (file_exists($userimg1)) {
$user-img = $userimg1;
} else {
$user-img = $userimg2;
}

然後再將 profile_view_body.tpl 內的使用者相片改成
<img src="{USER-IMG}" border="0" alt="{USERNAME}" onload="javascript:if(this.width>screen.width-350) this.width=screen.width-350">

可是, 一開使用者的內容時就跑出,
Parse error: parse error, unexpected '[' in c:\appserv\pwc\profile.php on line 133

就是 $username=userdata['username']; 這一行就有問題??

這又是那有問題??
超級牛
星球普通子民
星球普通子民
文章: 14
註冊時間: 2003-12-06 00:13
來自: Earth

文章 超級牛 »

GeniusKiKi 寫:http://phpbb-tw.net/phpbb/viewtopic.php?t=21737

參考看看這篇文章
然後每個用戶開一個資料夾給他(木亥火暴)
裡面都丟一個這樣的檔案
這樣也許會簡單許多
Thanks..
我會試者做做看!!
bu
版面管理員
版面管理員
文章: 443
註冊時間: 2003-02-23 12:46
來自: 25° 4′N 121° 29′E
聯繫:

文章 bu »

$username=$userdata['username'];
^^" 才對...
*譯文資料在phpBB 技術文件
bu.femto-size
*和我聯絡,請寄 or Google Talk 圖檔
*作品: Intergrated Toplist & Message Can
超級牛
星球普通子民
星球普通子民
文章: 14
註冊時間: 2003-12-06 00:13
來自: Earth

文章 超級牛 »

bu 寫:$username=$userdata['username'];
^^" 才對...
嗯~ 原則上我在中午1:30左右就找到了少掉了的"$"... (但是下面還是會有錯)
所以又將 "=" 改成了 "==" 才可以執行.
目前的程式是這樣的..

// Cho 判斷使用者圖檔是否存在\r
$username=$userdata['username'];
$userimg1='../Pictures/UserPics/' . $username . '.jpg';
$userimg2='../Pictures/UserPics/no-image.gif';

if (file_exists($userimg1)) {
$user-img == $userimg1;
} else {
$user-img == $userimg2;
}

$template->assign_vars(array('user-img' => $userimg1,));
$template->pparse('view_body');
// Cho 判斷使用者圖檔是否存在\r

在最後面兩行, 我試圖將user-img回給profile_view_body,
但是在profile_view_body內加入的{user-img}內卻抓不到這個變數..
這... 又是那兒做錯了??
超級牛
星球普通子民
星球普通子民
文章: 14
註冊時間: 2003-12-06 00:13
來自: Earth

文章 超級牛 »

弄了幾天, 終於搞定了!!
原來.. 一開始就弄錯了檔案..

關鍵在於 \includes\usercp_viewprofile.php

祗要加入判斷式
$username=$profiledata['username'];
$checkimg="./Pictures/UserPict/" . $username . ".jpg";
$no_image="./Pictures/UserPict/no-image.gif";

if (file_exists($checkimg))
{$user_img = $checkimg;}
else
{$user_img = $no_image;}

然後再將 $user_img 回給 profile_view_body 就大功告成囉!!
'USER_IMG' => $user_img,
主題已鎖定

回到「外掛問題討論」