Begin net weer wat met php te klooien na een periode van 6 jaar.
Loop natuurlijk meteen tegen mijn grenzen aan.

Ik probeer een jpg op te slaan van een html pagina die mijn ip-cam genereert.
Die ip-cam roep ik aan met ip-adres en poortnummer (zoals http://123.123.123.123:2200).

Nou lukt het me wél de source code van willekeurige URL's op te halen en daar een plaatje uit op te slaan, maar bij die ip-cam lijkt het fout te gaan bij het ip-adres + poort in plaats van een 'normale' url.

Iemand tips over hoe ik dat moet doen? Googlen met ip-adres en php als termen geeft eigenlijk alleen resultaten over het retrieven van ip-adressen.
Thanks, dat was inderdaad 1 van de opties die ik probeerde, maar onderstaande code geeft een leeg resultaat.
Wat zie ik over het hoofd?

<?php
// create curl resource
$ch = curl_init();

// set url
curl_setopt($ch, CURLOPT_URL, "http://123.123.123.123:2200");

//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// $output contains the output string
$output = curl_exec($ch);

// close curl resource to free up system resources
curl_close($ch);

echo $output;
?>
Is dat je camera, of de een of andere foscam server die meerdere camera's aanroept?

Los daarvan:
je vergeet een password mee te geven.

mogelijk werkt http://jeusername:[email protected]:2200/


(nb: ik zou het ip adres verwijderen uit je post)


dus http:// een-username : een-password @ ipadres : portnummer
(want phphulp verhaspeld de link)
maar spreek jij nu de camera zelf aan, of een server die er nog voor zit?

Ik ken met name camera's die aangesproken worden met http://10.0.0.1:99/snapshot.cgi of /videostream.cgi voor bewegend beeld.
Er zijn uitzonderingen, maar de Foscam cams doen het (veelal) zo.
De camera zelf. Deze URL heb ik expliciet van het Foscam forum zelf.

Het probleem lijkt dus wel te zitten in de ip:poort combinatie in plaats van de rest van de URL, aangezien http://123.123.123.123:2200 ook niet werkt.
blokt je firewall uitgaand verkeer?

Waar draait het php-script? op een server in een datacenter, of in het lokale netwerk waarin ook de camera hangt?

Toevoeging op 23/09/2015 15:16:45:

als ik de url aanroep, krijg ik xml terug:

<CGI_Result>
<result>-2</result>
</CGI_Result>

als ik het password leeg laat,

en -1 als ik geen usr/pwd opgeef.
Welke Firewall? Die van de hosting provider of die van mijn router thuis? (die staat nl. uit).
Script draait bij de hosting provider.

Maar als een browser exact dezelfde URL kan openen, moet PHP dat toch ook kunnen?
de firewall van de provider bedoel ik

werkt je curl script wel als je via poort 80 de site van phphulp.nl opvraagt?
ofwel: heeft je provide niet de curl-functies geblokt?
Ik had, bij wijze van test eerst onderstaande geprobeerd.
Dat werkte prima.
Dus curl werkt.

<?php
// create curl resource
$ch = curl_init();

// set url
curl_setopt($ch, CURLOPT_URL, "http://www.example.com:80";);

//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// $output contains the output string
$output = curl_exec($ch);

// close curl resource to free up system resources
curl_close($ch);

echo $output;
?>

Reageren