/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hent billede fra anden HP problem
Fra : -Martin-


Dato : 06-01-02 23:57

Ja jeg er igang med at lave noget billede stads ..

Jeg ska have et billede fra en hjemmeside som brugeren selvfølgelig
skriver ...

Det er bare ren html det kommer med ...

Så ska det jo valideres for at se om det virkelig ER et billede og
ikke en php fil eller andet man prøver at uploade ... det vil jeg
gerne tjekke ... og jeg har prøvet med strstr

if (!stristr($billede_hp,".jpg") || !stristr($file,".gif")) { $fejl[]
= "Stien indeholder ikke noget billede"; }

Men den kommer hele tiden ud med fejlen ... selvom det ER et billede
man ønsker

brugte sider er http://natten-i.dk/index.php og
http://natten-i.dk/images/mig.jpg

Hvad gør jeg forkert ?

-- Kilde kode --
<form action="index.php" method="post">
<input type="hidden" name="action" value="tjek_pic">
<input type="text" name="billede_hp" value="<?=$billede_hp;?>"
size="25">
<input type="submit" name="submit" value="Vælg billede"
id="createsubmit">

-- og action tjek_pic kildekode --
if ($action == "tjek_pic") {
if (empty($billede_hp)) { $fejl[] = "Billede som skal vises er tomt";
}
if (!stristr($billede_hp,".jpg") || !stristr($file,".gif")) { $fejl[]
= "Stien indeholder ikke noget billede"; }

[SNIP en masse kode som ikke har betydning]

 
 
Johan (07-01-2002)
Kommentar
Fra : Johan


Dato : 07-01-02 00:38

> -- og action tjek_pic kildekode --
> if ($action == "tjek_pic") {
> if (empty($billede_hp)) { $fejl[] = "Billede som skal vises er tomt";
> }
> if (!stristr($billede_hp,".jpg") || !stristr($file,".gif")) { $fejl[]
> = "Stien indeholder ikke noget billede"; }
>
> [SNIP en masse kode som ikke har betydning]

if(!stristr($billede_hp, ".jpg") && !stristr($billede_hp, ".gif")) ....
osv...

Det du reelt sagde før er...
Hvis billede ikke indeholder jpg, eller ikke inderholder gif så kasser....
dermed skal du have en fil der hedder .jpg og .gif på samme tid....

Du skal i stedet sige:
Hvis ikke billedenavnet indeholder jpg OG DET HELLER IKKE indeholder .gif
så drop det...

mvh

Johan

Niels Andersen (07-01-2002)
Kommentar
Fra : Niels Andersen


Dato : 07-01-02 02:37

"-Martin-" <admin@natten-i.dk> wrote in message
news:a7lh3ucd7dp150datb4la6itbtr5q2sjoj@4ax.com...
> Så ska det jo valideres for at se om det virkelig ER et billede og
> ikke en php fil eller andet man prøver at uploade ...

Nu skal du passe på.
Det du tjekker, er kun filnavnet. Filen kan fint være en php-fil, der hedder
..jpg.
Du må hellere kigge på *indholdet* af filen.

Men så på den anden side, en fil kan godt være både et billede og en
php-fil. Jeg har ikke selv leget med det, men der var engang en der sagde,
at han havde lavet et gif-billede der fint kunne ses i browseren, åbnes i en
editor osv. Men i kommentar-feltet var der PHP-kode, og der kan jo stå hvad
som helst.

Så altså: Kig på indholdet, og drop alt om filnavnet. Men sørg samtidig for,
at det aldrig kan lade sig gøre, at eksekvere filerne som php, eller noget
som helst andet!

--
Mvh.

Niels Andersen



Chano Andersen (07-01-2002)
Kommentar
Fra : Chano Andersen


Dato : 07-01-02 02:31

On Sun, 06 Jan 2002 23:57:27 +0100, -Martin- <admin@natten-i.dk> enlightend everyone in dk.edb.internet.webdesign.serverside.php with:
>Hvad gør jeg forkert ?

Aner det ikke, men hvorfor ikke bare åbne billede og checke om getimagesize
fejler? Det ville jeg selv gøre. getimagesize() fejler helt sikkert, hvis
det ikke er et rigtigt billede den får.

--
Chano Andersen (chano@mrfunny.yi.org)
MSN Messenger: chano_andersen@hotmail.com ICQ: 15377564
Yahoo! Messenger: mrfunny_dk AIM: mrfunnydk1
http://mrfunny.yi.org/

Søg
Reklame
Statistik
Spørgsmål : 177505
Tips : 31968
Nyheder : 719565
Indlæg : 6408554
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste