thinkphp+jquery提交怎么一直在显示正在提交.
下面是jquery代码
$.ajax({ type: "POST", url: "/thinkphp/blog/User/Login/login", dataType: "json", data: {"user":admin_name,"pwd":admin_pass,"authcode":authcode}, beforeSend: function(){ $('<div id="msg" />').addClass("loading").html("{:L('login_')}").css("color","#FF0000").appendTo('.login_btn'); }, success: function(json){ if(json.success==1){ $("#msg").remove(); $('<div id="div-y" />').addClass("notice_y").html(json.msg).appendTo('.div_c').fadeOut(3000); location.href="{:U('Index/index')}"; }else{ $("#msg").remove(); $('<div id="div-b" />').addClass("notice").html(json.msg).css("color","#FF0000").appendTo('.div_c').fadeOut(3000,function(){ return false; }); //location.href="{:U('Login/index')}"; //return false; } } });
下面是空php代码
//登陆验证 public function login(){ if(!IS_POST){ $array['msg']='页面不存在'; $array['success']=0; $this->ajaxReturn($array); } $user = I('admin_name','','htmlspecialchars','trim'); $pass = I('pwd',''); $verify = I('authcode','','htmlspecialchars','trim'); //检测验证码 if(!check_verify($verify)){ $array['msg']=L('login_vcode_error'); $array['success']=0; $this->ajaxReturn($array); } $admin = M('admin')->where(array('username'=>$user))->find(); //dump($admin); //判断密码是否正确 if(!$admin || ($admin['password']) != md5($pass)){ $array['msg']=L('login_fail'); $array['success']=0; $this->ajaxReturn($array); } //判断是否被锁定 elseif($user['IsLock']==1){ $array['msg']=L('login_IsLock'); $array['success']=0; $this->ajaxReturn($array); } }
在点击登录的时候验证是可以验证,但是用户名密码这块一直提示“正在登录....”
回复讨论(解决方案)
在thinkPHP中,可以在js中用U方法吗??location.href="{:U('Index/index')}";
我记得tp3.0版本中是不能用的。
在thinkPHP中,可以在js中用U方法吗??location.href="{:U('Index/index')}";
我记得tp3.0版本中是不能用的。
目前看似可以用的,我的TP版本是3.2.3的,没提示什么错误
哪位告诉下呢,这个问题主要是后台接收不到ajax传的值,都是空值。
在thinkPHP中,可以在js中用U方法吗??location.href="{:U('Index/index')}";
我记得tp3.0版本中是不能用的。
目前看似可以用的,我的TP版本是3.2.3的,没提示什么错误
试一下把{:U('Index/index')}存到页面隐藏表单里
然后location.href=$('#myvalue').value;
把error函数也写进去看看
error: function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); },
把error函数也写进去看看
error: function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); },
你好,加上没什么反应,现在主要问题是后台接收不到ajax传过去的值,data: {"user":admin_name,"pwd":admin_pass,"authcode":authcode},这块值在控制器里面读取不到。
1、你是怎么知道数据没有传过去的?
2、目标 url 写的对吗?
/thinkphp/blog/User/Login/login ???
1、你是怎么知道数据没有传过去的?
2、目标 url 写的对吗?
/thinkphp/blog/User/Login/login ???
提交的时候验证码是可以验证,到验证密码的时候总是提示登录失败。
目标url我用的是U函数
数据表中的password字段是md5后的32位的吗?
数据表中的password字段是md5后的32位的吗?
是的,这个我用表单提交测试过了的
1、你是怎么知道数据没有传过去的?
2、目标 url 写的对吗?
/thinkphp/blog/User/Login/login ???
我的项目目录是User不知道跟这个user有关系吗?
验证码是可以验证,到验证密码的时候总是提示登录失败
$user = I('admin_name','','htmlspecialchars','trim');
$pass = I('pwd','');
$verify = I('authcode','','htmlspecialchars','trim');
先把success回调函数去掉,上面三个变量变量能不能在控制器打印出来??如果不能,去检查js部分的代码,如果能,检查login的代码。。。你说验证码可以验证,验证密码出错,是不是密码获取出了问题??
1、你是怎么知道数据没有传过去的?
2、目标 url 写的对吗?
/thinkphp/blog/User/Login/login ???
通过浏览器的debug查看请求的url地址是否正确。
地址都是对着,我最后又重新把所有的jqeury代码和控制器代码重写了一遍,没有出现问题了。我回忆了下,可能是js代码data:{}里面也得和控制器有出入,项目路径是User,我又在json里面又有一个user,可能是这两个冲突了。谢谢大家的帮助。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Alipay Php ...

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

L'application du principe solide dans le développement de PHP comprend: 1. Principe de responsabilité unique (SRP): Chaque classe n'est responsable d'une seule fonction. 2. Principe ouvert et ferme (OCP): les changements sont réalisés par extension plutôt que par modification. 3. Principe de substitution de Lisch (LSP): les sous-classes peuvent remplacer les classes de base sans affecter la précision du programme. 4. Principe d'isolement d'interface (ISP): utilisez des interfaces à grain fin pour éviter les dépendances et les méthodes inutilisées. 5. Principe d'inversion de dépendance (DIP): les modules élevés et de bas niveau reposent sur l'abstraction et sont mis en œuvre par injection de dépendance.

L'article traite de la liaison statique tardive (LSB) dans PHP, introduite dans PHP 5.3, permettant une résolution d'exécution de la méthode statique nécessite un héritage plus flexible. Problème main: LSB vs polymorphisme traditionnel; Applications pratiques de LSB et perfo potentiel

Comment définir automatiquement les autorisations d'UnixSocket après le redémarrage du système. Chaque fois que le système redémarre, nous devons exécuter la commande suivante pour modifier les autorisations d'UnixSocket: sudo ...

Envoyant des données JSON à l'aide de la bibliothèque Curl de PHP dans le développement de PHP, il est souvent nécessaire d'interagir avec les API externes. L'une des façons courantes consiste à utiliser la bibliothèque Curl pour envoyer le post� ...

L'article traite des fonctionnalités de sécurité essentielles dans les cadres pour se protéger contre les vulnérabilités, notamment la validation des entrées, l'authentification et les mises à jour régulières.

L'article examine l'ajout de fonctionnalités personnalisées aux cadres, en se concentrant sur la compréhension de l'architecture, l'identification des points d'extension et les meilleures pratiques pour l'intégration et le débogage.
