Dobrý den, ze svého webu poskytuju jinému webu (něco jako backend) výpis posledních pěti článků a posledních pěti příspěvků v diskuzních fóru.  XML nechtěl, tak jsem to udělal tak, že si může můj soubor jednoduše includovat z mého webu. Přístup do mé databáze z venku je zakázaný. 
Protože ale měl hosting, kde jsem nějaké problémy, nebyl můj web dostupný a kolegovi na jeho stránkách to PŘÍŠERNĚ zmršilo vzhled.
Proto se chci zeptat, jestli pro něj existuje nějaká možnost kontroly existence vzdáleného souboru. File_exists funguje jen v rámci domény. 
Napadá mně obejít to pomocí fsockopen :
$fp = fsockopen ("http://www.domena.cz/export/skript.php", 80);
if (!$fp) 
{
    echo "<small>Chyba: vzdálený soubor není k dispozici.</small><br>\n";
}
else
{
   include("http:/www.domena.cz/export/skript.php");
}
Může být ? Nebo raději jinak ?
                                 
                                 
                               
               
                              
                                 
                                      Copak on si může z tvého serveru includovat nějak soubory?
Já bych to celé dělal přes socket. Připojil bych se k tvému serveru, vyžádal si stránku (pokud by tam nebyla, tak vypsat chybu) a z ní bych vybral dané věci nějakým algoritmem.
PAVEL
                                 
                                 
                               
               
                              
                                 
                                      Copak on si může z tvého serveru includovat nějak soubory?
Může a dělá to...
A jak bys to řešil přes ten socket ? Na to jsem se ptal..
                                 
                                 
                               
               
                              
                                 
                                      > $fp = fsockopen ("http://www.domena.cz/export/skript.php", 80);
to je blbe ne ? v php jsem to sice nikdy nepotreboval, ale rekl bych, ze soketove funkce o http nic nevi, takze ten pozadavek na konkretni soubor musi jit az jako "zprava" tim soketem
tj.
fputs($fp,"HEAD /export/skript.php\nHost:www.domena.cz\n\n");
a pak cist, co to vrati
cimz pripominam, ze fsockopen je docasne zakazany, 
odvazuju si slibit, ze do konce tydne to pobezi - s rozumnymi limity na pocet a datovy tok spojeni
                                 
                                 
                               
               
                              
                                 
                                      co takle 
if($f=@fopen("http://..."))
{
...
fclose($f);
}
                                 
                                 
                               
               
                              
                                 
                                      Tady je základní komunikace přes socket:
$host = "tvujweb.wz.cz";
$port = 80;
$fp = FSockOpen($host, $port);
if ($fp):
  // POZADAVEK
  $head = "GET http://$host/podadresar/soubor.php HTTP/1.0\n";
  $head .= "Accept: text/*, text/html, */*\n";
  $head .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MSN 2.5; Windows 98)\n";
  $head .= "Host: $host\n";
  $head .= "Pragma: no-cache\n";
  $head .= "\n";
  FPuts($fp, $head);
  
  // ODPOVED
  $answer = "";
  while ($line = FGetS($fp, 128)):
    $answer .= $line; 
  endwhile;
  
  /*
  a teď si musíš z proměnné $answer vytáhnout vše co potřebuješ (pomocí řetězcových funkcí)
  */
  
  FClose($fp);
else:
  // chyba: nepodřilo se připojit k sereveru
endif;
PAVEL
                                 
                                 
                               
               
                              
                                 
                                      pouzivej \r\n a ne jenom \n - at dodrzujes rcf :-) (see rfc2616)