Smarty Fetch vs Smarty Display -- php フィールド と smarty フィールド 関連 問題

Smarty fetch vs smarty display












1
vote

問題

日本語

私はAjaxリプレッションに基づいて小さなテンプレートが表示されるようにメインテンプレートの中に小さなテンプレートを表示しなければなりません.Ajax要求の後にパラメータを取得しているステージになりました。

<事前> <コード> $smarty=new Smarty(); if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) &&$_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') { // echo "<pre>"; //print_r("Yes"); //echo "</pre>"; echo $smarty->fetch('../templates/small-page.tpl'); } else { $smarty->display('../templates/index-page.tpl'); }

ここでは、エコーステートメントが機能していません。HTMLに「はい」が含まれているが、ページに表示されないことをFirebugで見ることができます。あらゆる助けがあります。

英語

I have to display a small template inside a main template such that the small template is displayed based on the ajax reposne.I have gotten to the stage where I am getting the parameter after an ajax request.

$smarty=new Smarty();  if(isset($_SERVER['HTTP_X_REQUESTED_WITH'])     &&$_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {     // echo  "<pre>";      //print_r("Yes");      //echo "</pre>";      echo $smarty->fetch('../templates/small-page.tpl'); } else {      $smarty->display('../templates/index-page.tpl');  } 

Here the echo statement is not working .When I uncomment the print_r function I can see in firebug that the html contains "Yes" but it's not displayed on the page. Any help is appreciated.

</div
     
   
   

回答リスト

2
 
vote
vote
ベストアンサー
 

スマートタイプテンプレートの出力がXML形式の場合は、XMLHTTPのResponseXMLプロパティを使用できますが、PHPが正しいMIME-TYPEを出力する場合に限ります。

試してみてください:

<事前> <コード> header("content-type: text/xml"); echo $smarty->fetch('../templates/small-page.tpl');

そしてクライアント側で

<事前> <コード> alert(xmlhttp.responseXML);

うまくいったら教えてください!

 

If the output of your smarty template is in XML format, you can use the responseXML property of xmlhttp, but only if php outputs the correct mime-type.

try :

header("content-type: text/xml"); echo $smarty->fetch('../templates/small-page.tpl'); 

and then on the client side,

alert(xmlhttp.responseXML); 

Tell me if it works !

</div
 
 
   
   
1
 
vote

私はあなたの問題に賢いものが関わっているとは思わない。 Smartyは、コンパイルされたテンプレートの処理から出てくるものは何でも出力します。

「はい」が出て想像してください。

クライアント側では、

があります <事前> <コード> xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { //Not sure how to diplay a smarty template as a result of responseText or responseXMl } }

ResponseStextは「はい」を保持します。それでは、たとえば、試してください:

<事前> <コード> xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { alert(xmlhttp.responseText); } }

これがうまくいったら、あなたがテキストで何をしたいものを決める必要があります。

 

I don't think Smarty is involved in your problem. Smarty outputs whatever comes out of the processing of its compiled template.

Imagine "Yes" comes out.

On the client side, you have

xmlhttp.onreadystatechange=function() {      if (xmlhttp.readyState==4 && xmlhttp.status==200) {          //Not sure how to diplay a smarty template as a result of responseText or responseXMl       }  } 

responseText will hold "Yes". so for example, try:

xmlhttp.onreadystatechange=function() {      if (xmlhttp.readyState==4 && xmlhttp.status==200) {          alert(xmlhttp.responseText);      }  } 

If this works, you will have to decide what you want to do with the text.

</div
 
 
 
 

関連する質問

0  {if cond} foo {} bar {/ if}の正規表現  ( Regular expression to match if condfooelsebar if ) 
私が望んでいない表現のビットを投げるのが難しく、私がするビットを守っています。 問題は、入力文字列を指定しています: <事前> <コード> {if cond}foo{else}bar{/if} 持ってみるだけです。 <事前> <コード> 0: {if co...

0  CS-Cart製品ページのマルチベンダーベンダー管理者名を知る$ PRODUCTOMPAY_ID  ( Cs cart get multi vendor vendor admin name on product page knowing product comp ) 
マルチベンダーサイトのCS-CARTの製品ページに、私は多くの賢い変数にアクセスできますが、ベンダー管理者の最初の名前と姓にはアクセスできません。 私はその情報を知ることができる方法があります <事前> <コード> {$product.company_id} ...

61  PHPでテンプレートシステムを使用するのはなぜですか? [閉まっている]  ( Why should i use templating system in php ) 
閉鎖。この質問は意見ベースです。現在答えを受け付けていません。 この質問を改善したいですか? ...

2  テンプレートがコンパイルされなかったときにSmarty Output Debug情報を提供する方法?  ( How to make smarty output debug info when template fails to compile ) 
debugging オプションを true に設定していますが、Smartyテンプレートにエラーが発生した場合(すなわち、特定の<コード> smarty_modifier <に対応するプラグインはありません。 / CODE>)は、情報のために何も出力されま...

0  Prestashop $カテゴリ変数は別のIF内では機能しません  ( Prestashop category variable doesnt work within another if ) 
Prestashopを使用し、カテゴリ&gtに特定のスライドショーを追加する必要があります。 私はこのコードを挿入しようとしました: <事前> <コード> {if category->id == '1'} ... {/if} このコード内: <事...

4  CakePHPを使用している場合は、SmartTemplatesを使用する必要がありますか?  ( If i am using cakephp do i need to use smartytemplates too ) 
CakePHPを使用している場合は、SmartTemplatesを使用する必要がありますか? ...

1  Smarty:予想されるすべての変数がテンプレートに渡されたかどうかを検出する方法はありますか?  ( Smarty is there a way to detect whether all expected variables were passed to t ) 
次の内容を持つ賢いテンプレートファイルがあるとしましょう。 <事前> <コード> <div> var 1: {$var1}<br> var 2: {$var2} </div> と私はvar2の割り当てを忘れた場合の次の課題を...

95  tplファイルとは何ですか? PHP、Webデザイン  ( What are tpl files php web design ) 
誰かが私にPHP(Videocms)で実行されたサイトを再設計することを望んでいます。しかし、私が彼に私に送ってくれた情報源を私に送ったとき* .phpの代わりに* .tplファイル。それらの中にいくつかのコードがあります: <事前> <コード> {inclu...

7  スマートタイミーでの再帰を処理する最善の方法は何ですか?  ( What is the best way to handle recursion in smarty ) 
私はスマートよ賢さでの再帰を処理するためのいくつかの方法を見つけました、主に彼ら自身のテンプレートを含めることに基づいている、それはリソースのばかげた浪費のようです。私は一つのソリューションを見つけました、賢いスマートよ賢者でちょうどいいように思われた - し...

1  Prestashopを使用してSmartyテンプレートの変数にアクセスすることができるのはなぜですか?  ( Why is it possibile to access variables in smarty templates with prestashop ) 
他のPHPファイルに書かれたSmartyテンプレートのすべての変数にアクセスできるファイル(またはファイル)とは何ですか? それをする機能が見つかりません。 ...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有