Ни давно понадобилось написать скрипт для изменения настроек роутера NanoBridge M5 на базе AirOS,уже перепробывал кучу вариантов подставлял разные заголовки,передавал логин,и пасс в base64 и п.р PHP: $evo = curl_init(); $this_header = array('Content-Type: multipart/form-data',); curl_setopt($evo, CURLOPT_RETURNTRANSFER,1); curl_setopt($evo, CURLOPT_FOLLOWLOCATION, 1); # curl_setopt($evo, CURLOPT_SSLVERSION,3); # curl_setopt($evo, CURLOPT_SSL_VERIFYPEER, 0); # curl_setopt($evo, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($evo,CURLOPT_ENCODING , "gzip"); #curl_setopt($evo, CURLOPT_HEADER, 1); $data = ' username=ubnt& password=ubnt& uri=/ubnt.cgi'; curl_setopt($evo, CURLOPT_HTTPHEADER, $this_header); curl_setopt($evo, CURLOPT_HEADER, 1); curl_setopt($evo, CURLOPT_POST,1); curl_setopt($evo, CURLOPT_POSTFIELDS, $data); curl_setopt($evo, CURLOPT_URL,'http://192.168.1.20/login.cgi'); curl_setopt($evo, CURLOPT_USERAGENT,'Opera/12.0 (compatible; MSIE 5.01; Windows NT 5.0)'); $res = curl_exec($evo);echo $res; Таким образом удается,но это совсем не то что нужно. PHP: <form action='http://192.168.1.20/login.cgi' method='POST' enctype="multipart/form-data"> <input type='hidden' name='username' value='ubnt'> <input type='hidden' name='password' value='ubnt'> <input type='hidden' name='uri' value='/ubnt.cgi'> <input type='submit' name='ok' value='Auth'> </form> Подумывал коннектиться через SSH,но будет проблематично юзаю денвер а в нем нет поддержки ssh,ставить много гемороя Может кто нибудь сталкивался с таким?
Я вполне серьёзно изложил свои мысли. Чтение этих 3 цитат позволяет понять возможный источник проблемы. Или urlencoded string и array в php - это одно и то же?