plaatje laden aan de hand van gegevens uit db
ik haal informatie over dvds van een andere website. deze website toont ook de covers van deze dvds. het probleem is echter dat die plaatjes niet altijd werken.
nu wil het ik het als volgt oplossen: wanneer ik een nieuwe dvd add kopieer ik de cover van die site en up hem naar mijn eigen space.
deze cover heeft dezelfde naam als de weblink in mijn database. het zou dus iets moeten zijn van:
de info blijf ik overigens wel van de website moviemeter.nl halen.
Gewijzigd op 01/01/1970 01:00:00 door Sander R
ja en? wat werkt er niet?
op dit moment heb ik deze code om alles van de andere website te halen.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php
function httpSocketConnection($host, $method, $path, $data){
$method = strtoupper($method);
if ($method == "GET"){
$path.= '?'.$data;
}
$filePointer = fsockopen($host, 80, $errorNumber, $errorString);
if (!$filePointer){
logEvent('debug', 'Failed opening http socket connection: '.$errorString.' ('.$errorNumber.')<br/>\n');
return false;
}
$requestHeader = $method." ".$path." HTTP/1.1\r\n";
$requestHeader.= "Host: ".$host."\r\n";
$requestHeader.= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0\r\n";
$requestHeader.= "Content-Type: application/x-www-form-urlencoded\r\n";
if ($method == "POST"){
$requestHeader.= "Content-Length: ".strlen($data)."\r\n";
}
$requestHeader.= "Connection: close\r\n\r\n";
if ($method == "POST"){
$requestHeader.= $data;
}
fwrite($filePointer, $requestHeader);
$responseHeader = '';
$responseContent = '';
do{
$responseHeader.= fread($filePointer, 1);
}
while (!preg_match('/\\r\\n\\r\\n$/', $responseHeader));
if (!strstr($responseHeader, "Transfer-Encoding: chunked")){
while (!feof($filePointer)){
$responseContent.= fgets($filePointer, 128);
}
} else {
while ($chunk_length = hexdec(fgets($filePointer))){
$responseContentChunk = '';
$read_length = 0;
while ($read_length < $chunk_length){
$responseContentChunk .= fread($filePointer, $chunk_length - $read_length);
$read_length = strlen($responseContentChunk);
}
$responseContent.= $responseContentChunk;
fgets($filePointer);
}
}
return chop($responseContent);
}
$host = "www.moviemeter.nl";
$pad = "/film/";
$filmid = $_GET['film'];
$buffer = httpSocketConnection("www.moviemeter.nl", "GET", $pad . $filmid, "");
// dvd info
$dvdinfo = explode("<div id=\"film_info\">", $buffer);
//$dvdinfo = explode("px\">", $dvdinfo['1']);
$dvdinfo = explode("</div>", $dvdinfo['1']);
$dvdinfo = $dvdinfo['0'];
//$dvdinfo = nl2br("$dvdinfo");
//$dvdinfo = addslashes($dvdinfo);
// dvd plaatje
$dvdplaatje = explode("<img class=\"poster\" src=\"", $buffer);
$dvdplaatje = explode("\" style=\"width: 200px;\"", $dvdplaatje['1']);
$dvdplaatje = $dvdplaatje['0'];
?>
function httpSocketConnection($host, $method, $path, $data){
$method = strtoupper($method);
if ($method == "GET"){
$path.= '?'.$data;
}
$filePointer = fsockopen($host, 80, $errorNumber, $errorString);
if (!$filePointer){
logEvent('debug', 'Failed opening http socket connection: '.$errorString.' ('.$errorNumber.')<br/>\n');
return false;
}
$requestHeader = $method." ".$path." HTTP/1.1\r\n";
$requestHeader.= "Host: ".$host."\r\n";
$requestHeader.= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0\r\n";
$requestHeader.= "Content-Type: application/x-www-form-urlencoded\r\n";
if ($method == "POST"){
$requestHeader.= "Content-Length: ".strlen($data)."\r\n";
}
$requestHeader.= "Connection: close\r\n\r\n";
if ($method == "POST"){
$requestHeader.= $data;
}
fwrite($filePointer, $requestHeader);
$responseHeader = '';
$responseContent = '';
do{
$responseHeader.= fread($filePointer, 1);
}
while (!preg_match('/\\r\\n\\r\\n$/', $responseHeader));
if (!strstr($responseHeader, "Transfer-Encoding: chunked")){
while (!feof($filePointer)){
$responseContent.= fgets($filePointer, 128);
}
} else {
while ($chunk_length = hexdec(fgets($filePointer))){
$responseContentChunk = '';
$read_length = 0;
while ($read_length < $chunk_length){
$responseContentChunk .= fread($filePointer, $chunk_length - $read_length);
$read_length = strlen($responseContentChunk);
}
$responseContent.= $responseContentChunk;
fgets($filePointer);
}
}
return chop($responseContent);
}
$host = "www.moviemeter.nl";
$pad = "/film/";
$filmid = $_GET['film'];
$buffer = httpSocketConnection("www.moviemeter.nl", "GET", $pad . $filmid, "");
// dvd info
$dvdinfo = explode("<div id=\"film_info\">", $buffer);
//$dvdinfo = explode("px\">", $dvdinfo['1']);
$dvdinfo = explode("</div>", $dvdinfo['1']);
$dvdinfo = $dvdinfo['0'];
//$dvdinfo = nl2br("$dvdinfo");
//$dvdinfo = addslashes($dvdinfo);
// dvd plaatje
$dvdplaatje = explode("<img class=\"poster\" src=\"", $buffer);
$dvdplaatje = explode("\" style=\"width: 200px;\"", $dvdplaatje['1']);
$dvdplaatje = $dvdplaatje['0'];
?>
wat ik nu wil is het laatste stukje //dvd plaatje vanaf mijn eigen webspace laden zodat het plaatje altijd zichtbaar is. ik weet op dit moment alleen dat het ongeveer met deze code ong. moet gaan werken maar waneer ik dit ga proberen is mn gehele site verdwenen.