0

sencha touch アプリケーションを作成し、コントローラーで ajax コードを次のように使用しました。

   if (condition is true){
                            Ext.Ajax.request({
                                url: 'http://localhost/../abc.php?action=check',
                                params: valuesUser,
                                method: 'POST',

                                success: function(response){
                                    var text = response.responseText;
                                    console.log(response.responseText);
                                     if(response.responseText == 'exists')
                                {
                                //Ext.Msg.alert('Success', text);
                                Ext.getCmp('loginform').destroy();
                                Ext.Viewport.setActiveItem(Ext.create('RegisterForm.view.Main'));
                                }
                                else{
                                    Ext.Msg.alert('Success',text);
                                }
}

                                failure : function(response) {
                                    Ext.Msg.alert('Error','Error while submitting the form');
                                    console.log(response.responseText);
                                }
                            });
                           }
                        else{
                            Ext.Msg.alert('Error', 'All the fields are necessary');
                        }

私のabc.phpには次のコードが含まれています

<?php
$con = mysql_connect("localhost","root","");
mysql_select_db('RegisterForm',$con);
if($_REQUEST["action"]== "check"){
$query = "SELECT name FROM userdetails WHERE name ='" . $_POST['userName'] . "' ";
      $queryresult = mysql_query($query);
      $count = mysql_num_rows($queryresult);
      if($count == 1)
        {
            echo('values are in the db');
        }
       else
        {
            echo("values aren't in the db");
        }
}
?

コントローラーコードで条件が true の場合、abc.php に移動し、データベースに名前が存在するかどうかを確認します。名前が存在する場合は、別のビューを開く必要があります。そうでない場合は、値がdb.しかし、上記のコードを使用して、両方のケースで別のビューに移動します(値はdbにあり、値はdbにありません)。前もって感謝します...

4

1 に答える 1

0

PHP から返された値に基づいて、sencha コードに条件を入れる必要があります。何かのようなもの:

if(response.responseText == 'exists')
    Ext.Viewport.setActiveItem(Ext.create('RegisterForm.view.Main'));
else
    Ext.Msg.alert('Success', text);

さらに

echo 'exists';

それ以外の

echo('values are in the db');
于 2013-01-31T05:46:38.740 に答える