webForumDet fria alternativet

Ladda upp och skala bild på server samt koppla dessa till en databas

PHP

1 svar · 359 visningar · startad av kottfars

Medlem sedan maj 20101 inlägg
Frågan#1

Hej!
Mitt först inlägg här efter hört många lovord om denna sida:)

Jag håller på och göra en webapp som man kan skapa album i och och ladda upp bilder, nu har jag kommit så längt att själv albumen går att skapa, så tänkte ge mig in på att börja skriva koden för att ladda upp och samtidigt skala ner bilderna till en mer hanterbar storlek så man kan lägga in dom i en bildvisare utan att det tar evigheter att ladda dom.
Tanken är också att deras filnamn ska ändras och det nya namnet ska läggas in en databas.

Spec på mjukvarans som används:
Php (4.x har jag för mig) med gd bibloteket installerat och detta är kopplat till en mssql databas, självklart har webservern apache då och allt som skrivs är i php dokument och även i något xml till bildvisaren (autoviewer).

Någon som har lite tips?

tacksam för alla svar:)

Medlem sedan juni 20034 013 inlägg
#2

För det första måste din form-tagg innehålla:

enctype="multipart/formdata"

Sedan har du ju en <input type="file"> och den ger du ett namn, exempelvis <input type="file" name="bild">

Då kommer den uppladdade filen att hamna i variabeln $_FILES['bild']

$_FILES['bild']['tmp_name'] är filnamnet på din server.
$_FILES['bild']['name'] är vad den heter hos användaren.

Börja med att kolla vad det är för filtyp för att öppna den med rätt funktion i gd:
imagecreatefromgif()
imagecreatefromjpeg()
imagecreatefrompng()

Med getimagesize() får du reda på bildens upplösning så du vet om du ska ändra storlek på den och i så fall med hur mycket...

Skapa en ny bild med imagecreatetruecolor() och den nya storlek du har bestämt dig för och använd sedan imagecopyresampled() för att kopiera originalbilden till den nya storleken.

Använd slutligen imagejpeg(), imagegif() eller imagepng() för att spara den nya, storleksändrade, bilden till en fil.

258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)