Avatar billede tcp Nybegynder
12. november 2009 - 21:03 Der er 8 kommentarer og
1 løsning

php til at hente billede ud

Hej eksperten

Er der en der kan hjælpe med denne kode

Header("Content-type: image/png");

$imagedir = "./chartimages/";
$chartimage = $imagedir . $_GET['type'] . '.png';

if (file_exists($chartimage)) {
  $file = $chartimage;
} else {
  $file = $imagedir . 'default.png';
}
$img = imagecreatefrompng($file);


vil gerne have så den ser i databasen hvilke billede den skal hente men den laver fejl hvis jeg prøver at sætte en mysql_query ind foran scriptet..

Detter er url
http://xxx.dk/image.php?id=2

så skal den tjekke i databasen hvilket billede id 2 har valgt

$query = mysql_query("SELECT * FROM counter_info where SiteID = '$_GET[id]'");
  $row = mysql_fetch_array($query);

id 2 har valgt test.png

og når denne så køre <img src="http://www.xxx.dk/image.php?id=2" border=0>

så skal den vise test.png


Nogen der kan hjælpe
Avatar billede repox Seniormester
12. november 2009 - 22:49 #1
Hvad er det du forventer at få ud af din tabel?
counter_info lyder ikke som noget man har en billede tabel i, men jeg ved det da ikke...
Avatar billede tcp Nybegynder
12. november 2009 - 22:56 #2
Tabellen indeholder,,

website id, catgori , subkategori, img
1                35          50    1
2                36          49    7
3                1          99    9


så hvis  <img src="http://www.xxx.dk/image.php?id=2" border=0> bliver kørt


skal den hente img fra id website id 2 = img 7

og image.php viser 7.png
Avatar billede repox Seniormester
13. november 2009 - 09:25 #3
Udskriver image.php rent faktisk strengen 7.png?
13. november 2009 - 09:35 #4
Jeg sidder ogsaa og roder med at forstaa hvad opgaven er.

Hvis man har den naevnte tabel og en $website_id=2 (eller $website_id=$_GET['etellerandet'] saa kan der ikke vaere mange ben i at sige $imageid = mysql_query("SELECT img FROM tabellen WHERE websiteid = $websiteid");

De to spoergsmaal er saa hvor $website_id kommer fra og hvad oplysningen skal bruges til.

Er det saadan at du paa din egen server har en mappe med images og et valg mellem et antal websites saaledes at hvis der fyldes en webadresse ind saa henter den billedet fra den mappe?  Eller sidder billedet der skal hentes paa den website der fyldes ind?  I saafald ser din tabel noget forenklet ud.  Og hvem fylder ind hvilken website det drejer sig om og hvordan?  Giv lidt mere fyldestgoerende oplysninger.  Har du noget kode der allerede virker, maaske en prototype paa din site?
Avatar billede repox Seniormester
13. november 2009 - 09:56 #5
Jeg forstår såmænd godt opgaven; det irriterer mig bare at folk ikke kan finde ud af at komme med den kildekode det drejer sig om - vi skal jo praktisk talt sidde og gætte på nuværende resultater kontra tidligere resultater...
Avatar billede tcp Nybegynder
13. november 2009 - 12:47 #6
Oki prøver at forklare lidt bedre her

http://spotlink.dk/image.php?id=14&type=4
hvis i køre dette link for i vist et billede, 
billede den viser hedder 4.png og det henter den fra en mappe på min server grunden til det er billede 4 er at type=4

Men for at den kode jeg er ved at lave skal hænge bedre sammen så vil jeg have den til at se i databasen  at id=14 har valgt at bruge type=4 som billede.

så jeg kan bruge en url http://spotlink.dk/image.php?id=14
uden type=


Håber det giver mening ... Martin
Avatar billede repox Seniormester
13. november 2009 - 13:03 #7



$id = mysql_real_escape_string($_GET["id"]);
$sql = "SELECT img FROM counter_info WHERE `website id` = '".$id."' LIMIT 1";
$res = mysql_query($sql);
if(mysql_num_rows($res) == 0)
{
  $file = $imagedir . 'default.png';
}
else
{
  $chartimage = $imagedir . mysql_result($res, 0, "img").".png";
  if (file_exists($chartimage)) {
    $file = $chartimage;
  } else {
    $file = $imagedir . 'default.png';
  }
}

Header("Content-type: image/png");
$img = imagecreatefrompng($file);




Du må selv lige rette parse errors og lignende til...
Avatar billede tcp Nybegynder
13. november 2009 - 15:36 #8
Ja men det virker fuldstendigt, Takker og bukker

require("conn.php");
$imagedir = "./chartimages/";
$id = mysql_real_escape_string($_GET["id"]);
$sql = "SELECT img FROM counter_info WHERE `SiteID` = '".$id."' LIMIT 1";
$res = mysql_query($sql);
if(mysql_num_rows($res) == 0)
{  $file = $imagedir . 'default.png';}
else

    $chartimage = $imagedir . mysql_result($res, 0, "img").".png"; 
    if (file_exists($chartimage)) {
        $file = $chartimage;
        } else {
        $file = $imagedir . 'default.png';
        }
}
        Header("Content-type: image/png");
        $img = imagecreatefrompng($file);
Avatar billede repox Seniormester
13. november 2009 - 15:51 #9
Jamen, det var da så lidt :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester