Bestand controleren
diederik1 - 23/01/2009 12:04
Nieuw lid
<html>
<head>
<title>test</title>
</head>
<body>
<?php
if(file_exists("http://cms.sanicom.nl/cms_uploads/shop_product/2/417/3_30xnlo01a5f.jpg")) {
echo gevonden;
} else {
echo nietgevonden;
}
?>
</body>
</html>
<html>
<head>
<title>test</title>
</head>
<body>
<?php
if ( file_exists ( "http://cms.sanicom.nl/cms_uploads/shop_product/2/417/3_30xnlo01a5f.jpg" ) ) { } else {
}
?>
</body>
</html>
Goedenmiddag,
Ik heb een vraag over het controleren van bestanden. Normaal gesproken doe je dat door de functie file_exists aan te roepen.
maar nu gaat het als volgt. De afbeeldingen staan op www.cms.sanicom.nl/cms_uploads/ maar moet worden weergegeven op www.crcouture.nl. En op die locatie moet dus ook worden gekeken of het bestand bestaat.
Wie weet hoe ik dit kan doen?
Met vriendelijke groet,
Diederik van Andel
4 antwoorden
Gesponsorde links
diederik1 - 23/01/2009 12:49
Nieuw lid
<html>
<head>
<title>test</title>
</head>
<body>
<?php
function remote_file_exists ($domein, $path, $port = 80, $get = false) {
$path = (substr($path, 0, 1) != '/') ? '/'.$path : $path;
$sock = fsockopen($domein, $port, $errno, $errstr, 5); //5s timeout
if (!$sock)
return false;
$cmd = ($get === true) ? "GET ".$path." HTTP/1.1\r\n" : "HEAD ".$path." HTTP/1.1\r\n";
$cmd .= "Host: ".$domein."\r\n";
$cmd .= "Connection: Close\r\n\r\n";
fwrite($sock, $cmd);
$output = NULL;
while (!feof($sock))
$output .= fgets($sock, 128);
fclose($sock);
if(preg_match('#HTTP/1.1 200 OK#', $output))
return true;
else
return false;
}
if(remote_file_exists('www.cms.sanicom.nl', '/cms_uploads/shop_product/2/417/3_30xnlo01a5f.jpg', 80)) {
echo hoi;
} else {
echo bestaatnieee!;
}
?>
</body>
</html>
<html>
<head>
<title>test</title>
</head>
<body>
<?php
function remote_file_exists ( $domein , $path , $port = 80 , $get = false ) {
$path = ( substr ( $path , 0 , 1 ) != '/' ) ?
'/' . $path : $path ;
$sock = fsockopen ( $domein , $port , $errno , $errstr , 5 ) ; //5s timeout if ( ! $sock )
return false ;
$cmd = ( $get === true ) ? "GET " . $path . " HTTP/1.1\r \n " : "HEAD " . $path . " HTTP/1.1\r \n " ;
$cmd .= "Host: " . $domein . "\r \n " ;
$cmd .= "Connection: Close\r \n \r \n " ;
$output = NULL ;
$output .= fgets ( $sock , 128 ) ;
return true ;
else
return false ;
}
if ( remote_file_exists( 'www.cms.sanicom.nl' , '/cms_uploads/shop_product/2/417/3_30xnlo01a5f.jpg' , 80 ) ) {
} else {
}
?>
</body>
</html>
diederik1 - 23/01/2009 12:49 (laatste wijziging 23/01/2009 12:50)
Nieuw lid
<html>
<head>
<title>test</title>
</head>
<body>
<?php
function remote_file_exists ($domein, $path, $port = 80, $get = false) {
$path = (substr($path, 0, 1) != '/') ? '/'.$path : $path;
$sock = fsockopen($domein, $port, $errno, $errstr, 5); //5s timeout
if (!$sock)
return false;
$cmd = ($get === true) ? "GET ".$path." HTTP/1.1\r\n" : "HEAD ".$path." HTTP/1.1\r\n";
$cmd .= "Host: ".$domein."\r\n";
$cmd .= "Connection: Close\r\n\r\n";
fwrite($sock, $cmd);
$output = NULL;
while (!feof($sock))
$output .= fgets($sock, 128);
fclose($sock);
if(preg_match('#HTTP/1.1 200 OK#', $output))
return true;
else
return false;
}
if(remote_file_exists('www.cms.sanicom.nl', '/cms_uploads/shop_product/2/417/3_30xnlo01a5f.jpg', 80)) {
echo hoi;
} else {
echo bestaatnieee!;
}
?>
</body>
</html>
<html>
<head>
<title>test</title>
</head>
<body>
<?php
function remote_file_exists ( $domein , $path , $port = 80 , $get = false ) {
$path = ( substr ( $path , 0 , 1 ) != '/' ) ?
'/' . $path : $path ;
$sock = fsockopen ( $domein , $port , $errno , $errstr , 5 ) ; //5s timeout if ( ! $sock )
return false ;
$cmd = ( $get === true ) ? "GET " . $path . " HTTP/1.1\r \n " : "HEAD " . $path . " HTTP/1.1\r \n " ;
$cmd .= "Host: " . $domein . "\r \n " ;
$cmd .= "Connection: Close\r \n \r \n " ;
$output = NULL ;
$output .= fgets ( $sock , 128 ) ;
return true ;
else
return false ;
}
if ( remote_file_exists( 'www.cms.sanicom.nl' , '/cms_uploads/shop_product/2/417/3_30xnlo01a5f.jpg' , 80 ) ) {
} else {
}
?>
</body>
</html>
Bedankt voor je snelle reactie! Maar wat doe ik nou verkeerd?
zie : http://www.crcouture.nl/test.html
Wim - 23/01/2009 12:54
Crew algemeen
als je een string wilt echo'en moet je deze tusen quotes zetten! (r32 en r34)
echo 'hoi';
en
echo 'bestaat niet';
dus
Gesponsorde links
Dit onderwerp is gesloten .