2016-05-13 4 views
2

私はPHPコードの中にjavascriptを入れたいと思っています。このjavascriptではmysql queryを実行するためのPHPコードを実行したいと思います。javascript in phpとその中のjavascript phpコード

私のサブミットボタンには、JavaScriptをコールしているので、サブミットボタン機能にコードを入れておくために、データベースから値をチェックするためにajaxを呼び出すことはできません。ユーザーがそれを確認していない場合、私は意志、ユーザ確認後、mysqlの更新クエリが実行された場合に機能を必要とするが、

ページ私はjavascriptの検証を確認していsubmitボタンをオン

  if (isset($_POST['createcomapny']) && $_POST['createcomapny'] == "Submit") { 
       $company = $_POST['cmpname']; 
       $user = $_POST['username']; 
       $checkquery = mysql_query("select * from license_info where company_name='$company' and admin_user_name='$user'"); 

       if($checkrecord>0){ 
         echo "<script>var conf=confirm('Are you sure want to create this company'); if(conf){"; 
         mysql_query("update license_info set admin_user_name='lalu' where company_name='$company' and admin_user_name='$user'"); 
         echo "} else { windows.location='accountlist.php'; }</script>"; 
     } 

をaccountlist.phpに進みます。

function create() 
      { 
       if (document.companyregister.cmpname.value === "") 
       { 
        alert("Please Enter Company name"); 
        document.companyregister.cmpname.value = ""; 
        document.companyregister.cmpname.focus(); 
        return false; 
       } 
       var company = document.companyregister.cmpname.value; 
       var user = document.companyregister.user.value; 
       var xmlhttp = new XMLHttpRequest();      
       xmlhttp.onreadystatechange = function() {    
       if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {      
       var res = xmlhttp.responseText;      
       var resu = res.split("|");      
       if(resu[0]=="lokesh"){       
         document.getElementById('selectdriver1').style.display = 'block';             
         document.getElementById("drvr").style.display = "none"; 
         document.getElementById('findprinter').disabled = false; 
       }           
       document.getElementById('driver').innerHTML = resu[1]; 
       return false; 
       } 
      } 
      xmlhttp.open("GET", "getaccount.php?", true); 
      xmlhttp.send();           
      return true; 

      document.getElementById("formsubmitting").style.display = "block"; 
      document.getElementById("hidesubmit").style.display = "none"; 
      return true; 
      } 
+2

クライアントとサーバーのサイドコードの分離についてちょっと混乱しているようです。あなたの質問に関して、あなたが必要とすることをするためには、AJAXを使用する必要があります。 –

+0

しかし、私がajaxを呼び出すと、非同期呼び出しのためにAjaxアクションの完了コードページが真の値になる前に呼び出されます。 – LOKESH

+0

これは、AJAXリクエストのコールバックを使用する必要がある理由です。 –

答えて

-1

method = "POST"のフォームを使用してください。ユーザーが確認したら、javascriptで「confirm」という名前の入力値をtrueに設定してフォームを送信します。必要なすべてのデータを隠し入力として追加できます。

if(conf){ document.getElementById("myForm").submit(); } 

PHP:

if($_POST['confirm']==true) { do action } 

をところでそれを提出する

Javascriptを。フォームを送信する前にこのメッセージをポップアップして確認することはできませんか?基本的には、そのような2倍のフォームを送信します。あなたは最初に1つを送信する前に確認を追加することができます...

+0

あなたは私の問題を理解していません。私は、送信ボタンがクリックされ、必要なjavascriptの送信ボタンのアクションでjavascriptで確認したい。 – LOKESH

+0

さて、私は問題を理解しました。ページをもう一度更新しない唯一の解決策は、AJAXを使用することです。あなたはAJAXを使うことはできないと言った。したがって、追加の確認データを含む別のフォームを送信してください:) JavaScript内にPHPコードを挿入することはできません。 あなたはAJAXを使うことはできないと言っていますが、あなたは実際に編集して使用しています。私は混乱しています。 – RaV