Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Tiedostyypin selvittäminen

Sivun loppuun

Sebu [09.06.2007 19:13:05]

#

Miten onnistuu tiedostotyypin selvittäminen php:lla? Eli tässä tapauksessa pitäisi selvittää onko ladattava tiedosto .pdf vaiko jokin muu. Kiitos vastauksista.

tkarkkainen [09.06.2007 20:15:38]

#

if (mime_content_type($tiedostonimi) == "application/pdf")
    // tiedosto on PDF
else
    //tiedosto ei ole PDF

Sebu [09.06.2007 20:37:28]

#

lainaus:

Call to undefined function: mime_content_type()

ei toimi mun php:n versiossa (4.3.11)? onko mitään vaihtoehtoja?

tsuriga [09.06.2007 20:56:25]

#

https://www.php.net/manual/en/function.mime-content-type.php:

See Also

Fileinfo for a replacement

Ja onpa tuolla user comments -osiossa varmaan sata ja yksi muuta tapaa.

Blaze [09.06.2007 20:56:50]

#

Toimiihan?

https://www.php.net/manual/en/function.mime-content-type.php:

mime_content_type
(PHP 4 >= 4.3.0, PHP 5)

Jäynis [18.06.2007 10:59:43]

#

Jostain syystä minullakaan ei toimi (php: 4.4.4).
Samaa valittelee kuin Sebulla.

Itselläkin tarve selvitellä tiedostotyyppi tai tarkemmin onko kyseessä kuva.
Alla ratkaisu jonka pitäis toimia ilman erillisiä moduuleja.
Kritisoikaa ankaralla kädellä.

<?php
//Päätteet jotka oletetaan kuviksi
$sp=array("jpg"=>true,
	"jpeg"=>true,
	"gif"=>true,
	"tif"=>true,
	"png"=>true,
	"jpe"=>true,
	"bmp"=>true);
$tiedosto="0001.jpg";
$ext=explode(".",$tiedosto);

if($sp[strtolower($ext[count($ext)-1])])
{
   echo $tiedosto." on kuva!";
}
?>

ajv [18.06.2007 11:10:33]

#

Jäynis kirjoitti:

Kritisoikaa ankaralla kädellä.

Tuohan ei tarkasta onko kyseessä kuva, vaan onko tiedoston pääte joku em. Toki on hyvä tarkistaa myös tiedostopääte, mutta varsinainen kuvan tarkastus kannattaa tehdä get_image_size()-funktiolla.

Jäynis [18.06.2007 11:42:42]

#

Kiitos nopeasta vastauksesta.
Itselläni sovelluksessani voidaan luottaa tiedostopäätteeseen
mutta esittämäsi tapa on kyllä reilusti parempi.
PHP on vielä opetteluasteella joten kysyisin vielä että onko
seuraava pätkä "oikea" tapa.

<?php
$tiedosto="0001.jpg";
if(@getimagesize($tiedosto))
{
 echo "Kuvahan se";
}
?>

kayttaja-2791 [18.06.2007 13:15:59]

#

Blaze kirjoitti:

Toimiihan?

https://www.php.net/manual/en/function.mime-content-type.php:

mime_content_type
(PHP 4 >= 4.3.0, PHP 5)

Vaatii tietty että Mimetype-laajennus on asennettu ja otettu käyttöön.

Antti Laaksonen [18.06.2007 20:18:18]

#

Jäynis kirjoitti:

PHP on vielä opetteluasteella joten kysyisin vielä että onko seuraava pätkä "oikea" tapa.

Näyttää ihan toimivalta koodilta. Niin kuin varmaan huomasit, funktio tunnistaa vaikka mitä erikoisia kuvamuotoja, eli joissain tilanteissa voi joutua vielä erikseen rajoittamaan (aiemman koodisi tapaan) kelpaavia kuvamuotoja.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta