如果 php 文件中的 count=1 使用 sench 导航到另一个视图

Posted

技术标签:

【中文标题】如果 php 文件中的 count=1 使用 sench 导航到另一个视图【英文标题】:navigating to another view if count=1 in php file using sench 【发布时间】:2013-01-31 05:36:25 【问题描述】:

我创建了一个煎茶触摸应用程序,在我的控制器中我使用 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");
        

?

如果控制器代码中的 contion 为真,它会转到 abc.php 并检查数据库中是否存在名称。如果名称存在,那么它应该打开另一个视图,否则它应该显示警报消息,因为值是t 在 db 中。但是通过使用上面的代码,我在两种情况下都导航到另一个视图(值在 db 中,值不在 db 中)。任何人都可以帮我做到这一点。在此先感谢...

【问题讨论】:

【参考方案1】:

您需要根据 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');

【讨论】:

我按照你说的更新了代码,但是如果数据库中没有值,我仍然没有改变导航到另一个视图 确保将值发布到 PHP 脚本。 确保你更新了 echo('values are in the db');呼应“存在”;在 abc.php 您在控制台中看到的文本是由 console.log(response.responseText); 编写的 是的,我确定。现在我得到警报消息存在(如果存在),否则显示警报消息,因为值不在数据库中。但是当警报消息存在时,它应该导航到主视图。但它不会导航到另一个视图 如果值在数据库中,则在控制台中获取“存在”文本,但它不会导航到主视图

以上是关于如果 php 文件中的 count=1 使用 sench 导航到另一个视图的主要内容,如果未能解决你的问题,请参考以下文章

php中的内存管理用于对象分配

php检测数组长度函数sizeof与count用法

php基础查找算法

php如何判断数组是一维还是多维

从sql count()获取个人答案到php

PHP array_count_values