2011-01-09 26 views
1
<?php 
if(isset($left)) 
{ 
echo "<button name = rightname onclick= \" disp();\">". "$left"."</button>"; 
} 
?> 

ここのdispはphp関数です。私はそれを使用することはできません。誰も私がこれを書くでしょうPHPを含むhtmlコードphp

+6

いいえ、 'disp'はそのコンテキストのJavaScript関数です。 'disp()'をPHP関数として使うつもりならば、ポストバックを行い、ユーザが 'rightname'をクリックしたかどうかをチェックする必要があります。 – BoltClock

+0

バックスラッシュを削除し、ドットを追加する: '' .disp()。 ">' –

答えて

-1

...この問題を克服する方法を私に言うことができます。

<?php if(isset($left)) : ?> 
    <button name="rightname" onclick="<?php disp(); ?>"><?php echo $left ?></button> 
<?php endif; ?> 
+0

[別の 'if' /' endif'構文のリファレンス](http://php.net/manual/en/control-structures.alternative -syntax.php) – marcog

+0

disp()関数が有効なdhtmlパラメータを生成することを真剣に疑います。 –

+0

ありがとうございます。私は疑いを晴らしました....そして、私はまだウェブサイトを作っていますが、私はまだ皆さんの助けが必要です(もしあれば)...だから私と一緒にいてください.... – xtras

0

単にあなたはアストンの答えを使用しない場合は、することができ、この

よう
<?php 
if(isset($left)) 
{ 
?> 
    <button name ="rightname" onclick= "<?php disp();?>"><?php echo $left;?></button> 
<?php 
} 
?> 
+0

どうやってdisp()関数出力? –

0

を試してみてください次のようにコードを修正してください:

私は、一重引用符を使用して処理しやすくすることを指摘しました内部を二重引用符で囲みます。

+0

OPは 'disp()'はPHP関数だと言っています。 – marcog

+0

申し訳ありませんが、BoltClockで取得できませんでした。編集されました。ありがとう! – Aif

1

ユーザがブラウザで何かをクリックしたことに応答してPHP関数を実行する唯一の方法は、HTTPリクエストをサーバに送信することです。

これを達成するための最も簡単な方法は、次のようになります。

<a href="disp.php"><?php echo htmlspecialchars($left); ?></a> 

あなたはそれはあなたが実行したい機能を備えており、それを呼び出すことdisp.phpなどを記述する必要があります。

また、XMLHttpRequest(おそらくYUIjQueryなどの第三者のライブラリを介して)を使用して見ることもできます。これは、ブラウザに適切な応答を返す必要があります。ページ(アヤックス)を残して、ユーザーせずにJavaScriptを使用してHTTPリクエストを作成する。あなたはは、あなたの質問に基づいているように見える知識の量を考えると、あなたはintroduction to JavaScript最初に必要になる場合があります。

0

はonclickの唯一のjavascript機能のために働きますPHP関数ではなく動作しません。 質問の下でBoltClockのコメントを参照してください。

javascriptと組み合わせてphpを実行する方法の1つは、ajax投稿(http://api.jquery.com/jQuery.post/)を使用しています。例:

$.post("test.php", { name: "John", time: "2pm" }, 
    function(data){ 
    alert("Data Loaded: " + data); 
    }); 

と文字列と変数を連結するときに二重引用符の間で変数を置くか、単に二重引用符を閉じずに、文字列内の変数を配置する必要はありません。 AJAXで悩ま前

echo "<button name='rightname' >". $left."</button>"; 

または(二重引用符を使用している場合のみ機能します)

echo "<button name='rightname' >$left</button>"; 
0

、あなたは私がdisp()機能が何を求めて気にしますか?サーバの操作(ファイル操作、db接続)に大きく依存しないものであれば、JSに移植してAJAXの必要性を取り除く手助けをすることができます。

関連する問題