Kom ihåg mig?

Förminska bilder

 
Ämnesverktyg Visningsalternativ
Oläst 2010-05-25, 11:23 #1
Kaantegs avatar
Kaanteg Kaanteg är inte uppkopplad
Nykomling
 
Reg.datum: Mar 2009
Inlägg: 14
Kaanteg Kaanteg är inte uppkopplad
Nykomling
Kaantegs avatar
 
Reg.datum: Mar 2009
Inlägg: 14
Question Förminska bilder

Håller på med ett projekt och har stött på problem!

Det är så att jag skulle vilja förminska bilderna vars url finns lagrad i databasen innan de visas på webbsidan. Jag har hittat en kod som fungerar när det gäller bildförminskningen men den fungerar inte när jag testar getimagesize() på urlen som hämtats i databasen. Urlen är en lagrad som en sträng i databasen, det är jag säker på. Teckenkodningen i databasen o php-scriptet är densamma. Strängen ser ut som den ska med dubbelfnuttar o så. Någon som vet eller har något tips?

Koden:

function visa_bilder($tabell) {
unset($_GET['tbl']);

require_once ("databas.inc");
$sql = "SELECT * FROM $tabell;";
$sql_result = mysql_query ($sql) or die ("Query error");
while ($row = mysql_fetch_assoc ($sql_result)) {

$bild = "\"" . $row['bild'] . "\"";
$width = 120;
$height = 120;

/*Det är här det inte fungerar... $myPhoto får inget värde att lagra... o felmeddelandet lyder:
Warning: getimagesize("xxxxx/ek0020bwmini.jpg ")
[function.getimagesize]: failed to open stream: No such file or directory in
xxxxxx/photoGallery.php on line 34*/

$myPhoto = getimagesize($bild);
$width = $myPhoto[0];
$height = $myPhoto[1];
$target = 120;
if ($width > $height) {
$percentage = ($target / $width);
} else {
$percentage = ($target / $height);
}
$width = round($width * $percentage);
$height = round($height * $percentage);

echo "<li class=\"thumbbox\"><a href=\"" . $row['bild'] . "\" rel=\"lightbox[$tabell]\">
<img src=\"" . $row['bild'] . "\" alt=\"" . $tabell . "\" title=\"" . $tabell . "\" width=\"" . $width . "\" height=\"" . $height . "\"/></a><p class=\"bildtext\">" . $row['beskrivning'] . "</p></li>";
}

echo "</ul>";

}
Kaanteg är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 11:45 #2
taz76 taz76 är inte uppkopplad
Flitig postare
 
Reg.datum: Jan 2008
Inlägg: 388
taz76 taz76 är inte uppkopplad
Flitig postare
 
Reg.datum: Jan 2008
Inlägg: 388
använda fullständig sökväg kanske?
taz76 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 11:57 #3
Johan_S Johan_S är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 99
Johan_S Johan_S är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 99
Ligger bilden på din egen server?

Se till att använda fullständig sökväg ifrån rooten, det löser många problem!

Prova:

$bild = '/' . $row['bild'];

En bildsökväg har inte slash på slutet..

EDIT: Såg inte det extra " som inte ska vara med.. hnn nedan gjorde det!

Senast redigerad av Johan_S den 2010-05-25 klockan 12:33 Anledning: Missade "
Johan_S är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 12:21 #4
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
Prova bild med:

$bild = $row['bild'];

eller

$bild = '/' . $row['bild'];
hnn är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 16:18 #5
Kaantegs avatar
Kaanteg Kaanteg är inte uppkopplad
Nykomling
 
Reg.datum: Mar 2009
Inlägg: 14
Kaanteg Kaanteg är inte uppkopplad
Nykomling
Kaantegs avatar
 
Reg.datum: Mar 2009
Inlägg: 14
$bild = "\"" . $row['bild'] . "\""; ger en hel url med http:// till /ek0020bwmini.jpg, jag har bara utelämnat hela sökvägen här av säkerhetsskäl, $bild ger en fullständig sökväg.

"En bildsökväg har inte slash på slutet..." = slashen med fnuttar i slutet är för att lägga på dubbelfnuttar på urlen
Kaanteg är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 18:30 #6
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Citat:
Ursprungligen postat av Kaanteg Visa inlägg
"En bildsökväg har inte slash på slutet..." = slashen med fnuttar i slutet är för att lägga på dubbelfnuttar på urlen
En sökväg brukar inte ha "fnuttar" i början och slutet heller...

Har du överhuvudtaget provat att du har rätt sökväg med t.ex. file_exists()??
martine är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 20:02 #7
Kaantegs avatar
Kaanteg Kaanteg är inte uppkopplad
Nykomling
 
Reg.datum: Mar 2009
Inlägg: 14
Kaanteg Kaanteg är inte uppkopplad
Nykomling
Kaantegs avatar
 
Reg.datum: Mar 2009
Inlägg: 14
funktionen getimagesize() vill ha bildens sökväg inom dubbelfnuttar, det är ingen tvekan om att filen existerar då den används utan problem på andra ställen i scriptet...
Kaanteg är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 20:45 #8
Jimpsson Jimpsson är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 428
Jimpsson Jimpsson är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 428
Citat:
Ursprungligen postat av Kaanteg Visa inlägg
funktionen getimagesize() vill ha bildens sökväg inom dubbelfnuttar
Nej? getimagesize vill ha sökvägen till din bild. Du ska bara använda fnuttar när du skriver in sökvägen statiskt på följande sätt:

getimagesize('bilden.png');

Så du bör ta bort dubbelfnuttarna från $bild.
Jimpsson är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-25, 23:31 #9
taz76 taz76 är inte uppkopplad
Flitig postare
 
Reg.datum: Jan 2008
Inlägg: 388
taz76 taz76 är inte uppkopplad
Flitig postare
 
Reg.datum: Jan 2008
Inlägg: 388
om inte en http-adressen funkar är det väl blockerat i php.. då behöver du den fullständiga sökvägen till filen i filsystemet.. som på ett linux webhotell kanske är: /home/users/xxx/public_html/images/...

om scriptet ligger i rooten på webhotellet kör du:

$path = dirname(__FILE__).'/';
$myPhoto = getimagesize($path.$row['bild']);
taz76 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-05-26, 11:58 #10
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Uppenbarligen så har du fel sökväg. Skriv ut resultatet och se efter att det verkligen stämmer. Det är det enklaste och bästa sättet att felsöka i de fall det inte handlar om parse-fel.

Varför vill du ändra storleken i realtid förresten?
__________________
Full-stack developer, free for smaller assignments
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 00:30.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017