Image opladen
- chris vermeiren
-
ik zit dus met een probleem bij het opladen van fotos naar blob my sql velden.
tot nu toe gebuikte ik het volgende script:
<?
if ($HTTP_POST_FILES[file][tmp_name] != "none" OR !$mapi) {
If (filesize($HTTP_POST_FILES[file][tmp_name]) > 40500) {
echo "Bestand te groot!";
} else {
$date = (date ("dmY"));
$fp = @fopen($HTTP_POST_FILES[file][tmp_name],"r"); / poging tot openen van het bestand /
if ($fp) { / als het openen is gelukt /
$content = fread($fp,filesize($HTTP_POST_FILES[file][tmp_name])); / eerst de inhoud van t bestand uitlezen /
fclose($fp); / bestand sluiten /
echo" toevoegen aan: $tabeldb <br> bezig ... <br><hr>";
$sql = "INSERT INTO $tabeldb VALUES(0,'" . addslashes($content) . "','" . $_SESSION[nick] . "','" . $_SESSION[idm] . "','" . $date . "','" . $_SESSION[acidi] . "','" . $mapi . "')";
include('dbconnect-img.php');
@mysql_query($sql) or Die(mysql_error()); / en query uitvoeren /
$result = mysql_query("select * from $tabeldb WHERE imgi= '" . addslashes($content) . "' AND date= '$date' ") or die (mysql_error());
while ($row = mysql_fetch_array($result)){
$idi=$row["idi"];
}
echo "Bestand opgeladen<br>idi: $idi<br> url: imgview.php?idi=$idi&db=1 <br> full url: http://www.powerg.uwhost.net/imgview.php?idi=$idi&db=1";
} else { / als het bestand niet geopend kan worden, dus !$fp /
print "Kan bestand niet openen";
}
}
} else {
echo "Geen bestand of map geselecteerd!";
}
?>
------------------------------------------
dit script werkt al een heele tijd perfect
maar aangezien groote probleemen en meerdere tips die we hebben binne gekregen zou ik dus in de toekomst in combinatie met de php gd libary een transparant logo in de onderhoek willen toevoegen. ook hiervan heb ik mijn huiswerk al gemaakt, ik werk op dit ogenblik met het volgende script:
<?
// Naam van het plaatje (zonder pad omdat het later nog eens gebruikt wordt)
$sImage = '1.jpg';
// Haal de afmeting gegevens van het plaatje
$aData = getimagesize($sImage);
$iSizeX = $aData[0];
$iSizeY = $aData[1];
// Maak een nieuw truecolor-plaatje van de gewensde afmeting
$imgDest = imagecreatetruecolor(450, 360);
// Open het bestaande plaatje
$imgSrc = imagecreatefromjpeg($sImage);
// Copieer het bestaande plaatje naar het nieuwe plaatje (resizen)
imagecopyresampled($imgDest, $imgSrc, 0, 0, 0, 0, 450, 360, $iSizeX, $iSizeY);
// Haal de afmeting gegevens van de copyright notice
$aData = getimagesize('pg.png');
$iCopyrightSizeX = $aData[0];
$iCopyrightSizeY = $aData[1];
// Open het copyright notice plaatje
$imgCopyrightSrc = imagecreatefrompng('pg.png');
// Copieer de copyright notice over het nieuwe plaatje heen
imagecopyresampled($imgDest, $imgCopyrightSrc, 345,305, 0, 0, $iCopyrightSizeX, $iCopyrightSizeY, $iCopyrightSizeX, $iCopyrightSizeY);
// Schrijf het nieuwe plaatje als een JPG in de map 'verkleind'
header("Content-Type: image/png");
imagePng($imgDest);
// imagejpeg($imgDest, 'verkleind/'.$sImage ,95);
?>
------------------------------
zoals je al gezien zal hebben is dit echter alleen gebuikbaar voor fotos die op de server al staan.
de vraag is hoe kan ik deze aanpassen aan de html post vars en hoe dan terug als variable gaan bewaren naar sql toe ?
alvast bedankt
chris vermeiren
ps. ik ben Niet van plan om van systeem te veranderen zoals ik al op meerdere forums heb moete hooren. ik werk al zeker meer dan een jaar met dit sql systeem en ben helemaal niet van plan om van mysql weg te stappen.

