webForumDet fria alternativet

Förminska bilder innan de hämtas till webservern?

PHP

4 svar · 398 visningar · startad av Ken

Medlem sedan mars 2004252 inlägg
Frågan#1

Finns det nåt sätt att modifiera om koden nedanför, att bilden förminskas före innan den hämtas upp till webservern?

if (is_uploaded_file($_FILES['userfile']['tmp_name'])){ 
   if (eregi(".jpg$", $_FILES['userfile']['name'])){ 
    if (file_exists($_FILES['userfile']['name'])){ 
       echo " <script type=\"text/javascript\"> 
        alert('Det finns redan en bild med samma namn!'); 
       </script>"; 
    } 
    else{ 
      $imagefile = $dir."/".$idpic.$_FILES['userfile']['name']; 
      $thumb = $dir."/".$idpic.$_FILES['userfile']['name']; 
      $imagefile2 = $_FILES['userfile']['name']; 
      imagecreatethumb($thumb, $imagefile, NULL, NULL, NULL, 78); 
      move_uploaded_file($_FILES['userfile']['tmp_name'], $thumb); 
      // move_uploaded_file($_FILES['userfile']['tmp_name'], $imagefile); 
     // imagecreatethumb($thumb, $imagefile, NULL, NULL, NULL, 78); 
      $picture=$imagefile2; 
      $query = "insert into photos(photoid, picture, pictext) values('".$photoid."','".$idpic.$picture."','".$pictext."')"; 
      mysql_query($query,$db); 
      $query = "select * from photos where photoid='$photoid'"; 
      $result4 = mysql_query($query,$db); 
    } 
  } 
  else{ 
    echo " <script type=\"text/javascript\"> 
    alert('Det går endast att ladda upp bilder i jpeg-format!'); 
    </script>"; 
  } 
} 
?>
Medlem sedan juni 20034 013 inlägg
#2

Innan bilden har hämtats till servern så finns den bara på besökarens dator. Då måste det alltså vara på besökarens dator som förminskningen ska ske. Eftersom PHP körs på servern går det inte att använda det.

Javaskript körs på besökarens dator, men där har man ju inte tillgång till filer på besökarens dator.

Java och Flash är andra tekniker som körs på besökarens dator, men inte heller där tror jag man har tillgång till besökarens filer, av säkerhetsskäl.

Medlem sedan juli 2002732 inlägg
#3

Finns det något simpelt program, som man kan använda för att förminska
bilder i Windows?

Medlem sedan juni 20031 837 inlägg
#4

tror man kan göra det i det inbyggda Paint. dock blir inte kvaliteten den bästa.

Medlem sedan juli 20003 825 inlägg
#5

Java och Flash är andra tekniker som körs på besökarens dator, men inte heller där tror jag man har tillgång till besökarens filer, av säkerhetsskäl.

Nej, det är riktigt.

***
Det finns ingen möjlighet för en hemsida att manipulera information på en besökares dator... Tjena mittbena, hur skulle det se ut!!! Bara genom att besöka en hemsida skulle vad som helst kunna hända...! :-)

Det finns sätt att komma runt detta:

1. Skriva tydliga instruktioner.
2. Manipulera bilden med en komponent att den passar i det förhållandet som avses.

Jag röstar på tvåan. Min filosofi är, "får besökaren ett felmeddelande så är det mitt fel" (i egenskat av webbprogrammerare). I så fall har "jag" gjort ett dåligt jobb!

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