Jquery ўнутры класа PHP

Мне трэба, каб апублікаваць некаторыя xml у якасці API ў нашай сеткі з дапамогай PHP. Звычайна я хацеў бы выкарыстаць Curl, каб зрабіць гэта, якое я ведаю, што добра працую, але сервер мае скрыпты выконваюцца з аленевай скуры ў скручваюцца і не ўдаючыся ва ўсіх дэталі ён не можа быць усталяваны, як ён ламае некаторыя іншыя важныя вытворчыя прыкладання на сэрвэры.

Пасля некаторых роздумаў я спадзяваўся апублікаваць мой xml у API з дапамогай JQuery. Мне было цікава, калі хто-небудзь knoew калі б можна было атрымаць доступ да jQuery ўнутры класа PHP? Я ведаю, што гэта гучыць па-дурному, і я ўпэўнены, хто-небудзь скажа мне, чаму я не павінен рабіць гэта, але для мяне гэта гучыць як разумнае рашэнне.

Othwerwise я мог бы пайсці, хоць клас і паспрабаваць выцягнуць xml назад да кантролер і старонкі, якая выкарыстоўвае клас для адпраўкі XML.

P.S мы спрабавалі камандны радок кудзера, каб вырашыць нашу праблему, якая робіць працу, аднак мы атрымліваем праблему з даўжынёй URL па некаторых запытам як xml можа быць вельмі вялікім і занадта доўга, каб прайсці праз URL.

Любыя думкі?

0
webmasterworld.com/php/3220360.htm паспрабаваць гэта ...
дададзена аўтар Val, крыніца
дзякуючы Ф.О. rthis ім будзе паспрабаваць яго зараз ^^
дададзена аўтар azzy81, крыніца
А, не так прыгожа, але рашэнне, каб абыйсці гэта, мы стварылі новую табліцу БД на сэрвэры, які стварае xml і ў асноўным стварае радок у табліцы з XML. мы затым з дапамогай каманднага радка завіток (не PHP завітак), мы адправіць API ідэнтыфікатар радкі мы ўставілі. API-інтэрфейс затым загружае xml з базы дадзеных, аналізуе і вяртае адказ.
дададзена аўтар azzy81, крыніца
ён мае занадта шмат кропак адмовы для пастаяннага рашэння, але нам трэба somethign workingo для панядзелка, так што будзе рабіць цяпер і працаваць у напрамку лепшага рашэння на нашым Dev копіі на наступным тыдні. ^^ дзякуй усім людзям, якія знайшлі час, каб дапамагчы = D
дададзена аўтар azzy81, крыніца

2 адказы

Выкарыстоўвайце разеткі замест гэтага.

Скапіявана з ссылкі @Val публікуемай:

<?php
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp)
{
echo 'Could not open connection.';
}
else
{
$xmlpacket ='<?XML version="1.0"?>

';

$contentlength = strlen($xmlpacket);

$out = "POST /script_name.php HTTP/1.0\r\n";
$out .= "Host: www.example.com\r\n";
$out .= "Connection: Keep-Alive\r\n";
$out .= "Content-type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: $contentlength\r\n\r\n";
$out .= "XML=$xmlpacket";

fwrite($fp, $out);
while (!feof($fp))
{
$theOutput .= fgets($fp, 128);
}
fclose($fp);

// $theOutput is the response returned from the remote script
}
?>
1
дададзена
Парэзаў мае пункты :( Loool добра зроблена для адказу Тхо: р
дададзена аўтар Val, крыніца
tgank вы для вас адказ. Я паспрабаваць гэты метад, аднак, калі даў нам fsockopen erros. аб немагчымасці адкрыць патрабаваны URL, хоць мы маглі б наведаць URL, дробны іна браўзэр. Добрыя навіны з іншага боку, я знайшоў рашэнне whichisnt вялікі, але гэта працуе цяпер, які я растлумачу вышэй.
дададзена аўтар azzy81, крыніца
нават калі мы не выкарыстоўваем гэта рашэнне ён будзе выглядаць, каб быць лепшым рашэннем, каб абыйсці пытанне ім абліцоўванне. Так што я збіраюся прыняць гэта як адказ.
дададзена аўтар azzy81, крыніца

Вы не можаце. jQuery працуе ў браўзэры на кліенце ня на сэрвэры. Вы можаце адправіць Javascript кліенту і зрабіць вашы рэчы там. Але з file_put_contents вы можаце таксама адправіць дадзеныя на другі бок , калі яна прымае яго за ГЭТ.

1
дададзена