var stime = 'Sat Dec 17 2011 10:30:00 GMT+0530 (India Standard Time)'; <?php $s ="> var stime = 'Sat Dec 17 2011 10:30:00 GMT+0530 (India Standard Time)'; <?php $s ="> var stime = 'Sat Dec 17 2011 10:30:00 GMT+0530 (India Standard Time)'; <?php $s =" />

PHP変数にJquery変数を渡す方法は?

私は stime jQuery string変数から時間 "10:30" を抽出したい

And transfer value "10:30" in a PHP variable like this format "10, 30"

<script>

var stime = 'Sat Dec 17 2011 10:30:00 GMT+0530 (India Standard Time)';

<?php    
  $s = "<script>document.write(stime);</script>";    
  $e = "<script>document.write(etime);</script>";    
  $stime = substr($s,15,6);
 //substr_replace(string,replacement,start,length) 
  $convert_stime = substr_replace($stime,", ",3,1);
?>    
</script>

/**
 Output Will Be
 --------------
 Time: 10:30
 Converted Time: 10, 30
***/

それを処理する方法はありますか?助けてください、どんな提案も感謝します。ありがとう!

2
ところで、これは必要ありません、あなたは時間を変換し、JavaScriptを文字列を操作することができます。
追加された 著者 Wesley Murch,
PHPがサーバー上で実行されている間にJSがクライアント上で実行されます(ページがPHPからレンダリングされた後)。 POSTを使用してフォームを介して値を取得するか、AJAXを使用して、クライアント側からサーバー側に値を渡す必要があります。
追加された 著者 Bryan,

5 答え

JQueryはJavascriptで、クライアント側で作業しています。 PHPはサーバーサイドです。そのデータをサーバーに送信するには、何らかのタイプのポストバックを行う必要があります。ページがすでにクライアントによってレンダリングされている場合、PHPを呼び出すことはできません。

4
追加された
アアール・ガール・ケトー・ソーニャ
追加された 著者 Sami,

上記のコードからは不可能です。 ajaxを使ってみてください。

Javascriptはクライアント側です。 PHPはサーバー側です。

上記のようにPHP変数をJavaScriptに渡すことができます。 しかし、あなたはajaxやそのようなものを使用しない限り逆はできません

1
追加された
// "10:30"の部分をmysrtingから "10、30"に変換します。var mystring = "Sat Dec 17 2011 10:30:00 GMT + 0530(インド標準時)";出力は時間:10:30変更された形式:10,30
追加された 著者 FARAZ FRANK,

あなたはjquery変数をこの方法でPHPに渡すことはできません.JQueryはサーバー上ではなくクライアント上で実行されます。あなたのコードでは、 `$ s =" document.write(stime); "タグは文字列として扱われます。

あなたが望むことをする別の方法は、javascriptですべての書式設定作業を行うか、PHPで行うか、ajaxで時間変数を渡してPHPでフォーマットしてからajaxで取得することです。

javascript:

var stime='Sat Dec 17 2011 10:30:00 GMT+0530 (India Standard Time)';
var etime=stime.substr(15,6);
var res=etime.replace(":",",");

ajaxバージョン(2つのメソッドを一緒に使用する必要がある場合): クライアント側:

var stime='Sat Dec 17 2011 10:30:00 GMT+0530 (India Standard Time)';
$.ajax({
 url:"/your_php_script",
 data:{"stime":stime},
 success:funciton(data){
  alert(data);
}
})

PHP側:

  $stime=$_GET['stime'];
  $stime = substr($s,15,6);
  $convert_stime = substr_replace($stime,", ",3,1);
  echo $convert_stime;
1
追加された

Javascript(およびそれによってjQuery)は、ページをロードするときにクライアントのブラウザがブラウザに遭遇するまで実行されません。 PHPは、コードがクライアントに到達する前にサーバー側で発生します。 Javascript変数をPHPに渡す唯一の方法は、GETリクエストまたはPOSTリクエスト(これはAJAXまたは同期ページロードを介して行うことができます)です。

たとえば、PHPの$ _GET変数に格納するために、JS変数値をクエリ文字列に渡すことができます。

//Javascript loads the page with variable values in the querystring
var firstVar = 'first_value';
var secondVar = 'second_value';
location.href = 'index.php?firstvar='+firstVar+'&secondvar='+secondVar;

//at index.php?firstvar=first_value&secondvar=second_value, we parse items from the $_GET variable into discrete PHP variables
$firstVar = $_GET['firstvar'];
$secondVar = $_GET['secondvar'];
1
追加された
その場合、処理するPHPスクリプトに stime etime を渡してresponseTextのページに返すAJAX呼び出しを行う必要があります。
追加された 著者 Aaron,
そして、正直言って、あなたがやっている文字列変換(もしあなたが本当にこのデータを使って何をしようとしているのか分かります)がJavascriptで完全に処理できるのです。
追加された 著者 Aaron,
私はページを再読み込みせずにこれを行う必要があります
追加された 著者 FARAZ FRANK,

JavascriptとPHPについて根本的に混乱しているようです。

PHPはサーバー側のプログラミング言語です。それはサーバーマシン上で解釈され実行され、出力は通常HTTP経由でユーザーに配信されます。

Javascriptはクライアント側スクリプト言語であり、実行環境としてブラウザを使用してユーザマシン上で実行されます。

あなたが達成したいことは、クライアント側のコード(JavaScript)からHTTP POSTメソッド(またはGET - セマンティクスに依存します)を介してサーバーにHTTPRequestを送信することによって行うことができます。 AJAX、HTTPプロトコル、Javascript、クライアント/サーバーアーキテクチャの基礎などのトピックについて詳しく学ぶことができます。歓声メイト

1
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com