ユーザーがリンクをクリックしたときにPHPコードを実行する方法を教えてください。

anchor html hyperlink javascript php

ユーザーがリンクをクリックしたときに、リダイレクトせずにページにPHPコードを実行させたい。 これは可能ですか

またはJavaScript onclickイベントで?

  40  19


ベストアンサー

ええ、あなたはページをAJAXでロードしてからfalseを返すonclickによって起動されるjavascript関数を持つ必要があるでしょう。 あなたのプロジェクトにとってそれが受け入れられるなら、あなたはjQueryで以下を使うことができました:

function doSomething() {
    $.get("somepage.php");
    return false;
}


Click Me!

フォームの値を使う必要がある場合はポストバックもできます($ .post()メソッドを使います)。

96


他の人が示唆しているように、AJAX呼び出しをするためにJavaScriptを使用してください。

なんでも

function myJsFunction(){// Jqueryを使用して、他の例について// // ajaxを使用してPHPスクリプトを呼び出します。 下のリンクがfalseを返すのを見てください。 //これはブラウザがリンクをたどらないようにするためです。} </code> </pre>

<p> <a href="http://docs.jquery.com/Ajax/jQuery.ajax" rel="nofollow noreferrer"> http://docs.jquery.com/Ajax/jQuery.ajax </a> </p>

10


AJAXを使用しない限り、ユーザーがページを離れることなくリンクをクリックしたときにPHPを実行することはできません。 PHPはサーバーサイドのスクリプト言語です。つまり、ブラウザがページを見ることができるということは、PHPが存在しないということです。

Javascriptとは異なり、PHPはサーバー上で完全に実行されているため、ブラウザが背面でそれらを噛んだ場合、その解釈方法はブラウザにはわかりません。 PHPコードを呼び出す唯一の方法は、ページを更新するか、またはjavascriptを使用してページを取得することによって、ページ要求を発行することです。

AJAXソリューションでは、基本的にページはドメインの別のページにページリクエストを送信するためにJavaScriptを使用します。 それからJavascriptはあなたが応答に `echo ‘することに決めたものは何でも取得し、そしてそれはそれを解析しそしてそこからそれが望むことをすることができる。 レスポンスを作成しているときは、データベースの更新などのバックエンド関連の作業も実行できます。

4


まだjqueryをインストールしていない場合は(初心者なので)、次のコードを使用してください。

リンク

function thisfunction(){var x = new XMLHttpRequest(); x.open( "GET"、 "function.php"、true); x.send(); falseを返します。 }

4


私はこの記事が古くなっているのを知っています、しかし私は私の答えを加えたいだけでした!

あなたは指示なしにユーザーをログアウトすると言っています このメソッドはリダイレクトしますが、ユーザーを表示していたページに戻ります。 これが私の実装です:

// every page with logout button

// the logout link in your html
ログアウト

// logout.php page

そして私たちは行きます!

完全なURLからファイル名を取得するコードはバグプルーフではありません。 たとえば、クエリ文字列がエスケープされていない ‘/’に含まれていると、失敗します。

しかし、URLからファイル名を取得するためのスクリプトはたくさんあります。

ハッピーコーディング!

アレックス

3


さてあなたはリダイレクトせずに言った。 まあそのJavaScriptコード:

なんでも!

function confirm_delete(){var delete_confirmed = confirm( "このファイルを本当に削除しますか?");

if(delete_confirmed == true){// phpコードは自分の名前を公開できません^ _ ^} else {//このボタンをクリックした場合、ユーザーは返されます:) php '; }}

試してみてください。

2


みんなが彼らの投稿で提案しているようにAJAXが唯一のより良い方法があります。 別の方法は以下のようにIFrameを使うことです。

クリック

これで、IFrameで出力が得られます(ページまたはイベント内の必要な場所にIFrameを配置し、それをスクリプトから隠すことができます)。

Ajax以外のソリューションを望んでいる方が良いでしょう。

1


それを行う別のページにユーザーを送る

PHPを実行する

またはAjaxでそれを行う

// <![CDATA[
document.getElementById( 'link')。onclick = function(){// ajax経由でスクリプトを呼び出す... falseを返します。 }
// ]]>

...
PHPを実行する

0


これもうまくいくはずです

提出する


function callFunction(){<?php require( "functions.php"); ?>}

ありがとう、

カウチッパー

-1


タイトルとURLをコピーしました