谁一开始就是大神?

PHP 第25页

PHP

关于form提交action的问题[2.0]

dmCherry阅读(65)

    <form class="form-inline"  action="<?= Yii::$app->urlManager->createUrl(['post/index']);?>" id="w0" method="get" >
      <div class="form-group">                              
        <input type="text" class="form-control" name="PostSearch[title]" id="w0input" placeholder="按标题">                                
       </div>
       <button type="submit" class="btn btn-default">搜索</button>
   </form>

以上是我的代码,但是在submit后会自动跳转到默认路由上,action怎么写都无法正确识别
我试过 “index.php?r=post/index”
url::to也试过了
有谁遇到过吗 帮忙下,感谢。

几个建议
首先看下你的form是否正常工作,可以直接这样写 action=”#” 即post到当前action,这一步应该是可以的
接着就是你action里面写的url是否能访问, 找到post/index依次输入
echo ‘hello world’;
exit;
然后用浏览器直接打开访问,我估计这一步会报错,可能会跳回默认 路由,那么你只需要想办法把这个访问修复,表单即可正常使用
最后,可能会引起路由错误的地方,拼写,大小写,urlmanage
祝好运。
建议你审查元素看一下那个action地址到底是啥?
可能你对form的get不了解?
首先get的时候,action地址里是不能有参数的,例如index.php?r=xxxx中的?r=xxxx会被直接cut掉。
你需要在input.hidden里放r才可以。
没事可以逛下我的Yii小站 http://nai8.me
第一种 查看是否能跳到方法。
第二种 你是否有post/index 这个方法的权限。
第三种 post是关键字。
以上三种方式是否正确。欢迎继续询问。

大文件断点续传有大神给思路吗![2.0]

richLion阅读(59)

如题,大文件断点续传有大神给思路吗!查了不少资料,都挺混乱的,才入门Yii框架新手一枚

你可以看一下百度的webuploader,那个插件使用到了断点续传,大文件分片上传。非常好使。
纯php或者js,说实话不是太适合断点续传
引入七牛、百度云等第三方工具来做吧。
断点简单点就是js分片文件,一段一段上传 xmlpost服务器端,
服务器端记录当前上传数据写入文件,
然后用户再上传根据数据库继续写到这个文件尾 直到结束,
服务器端区分是哪个文件可md5某些参数什么的 什么ip啊等等唯一性,这样就是这个机器关闭了下次打开重新获取下服务器这个文件的大小从那个位置分片继续上传即可。
留意一下http的206状态,了解这个就可以搞定。大文件下载也没有问题。

YII2内验证手机号码唯一性以后,那在更新时手机号码就是他自己,但是还是提示不唯一[2.0]

fationlovely阅读(63)

在YII内做规则验证J95J%_6T43J_99)A4WG@T}6.png

这个是验证规则,可是在修改时候就一直提示 手机号码不唯一,不唯一的原因就是因为自己当前这个账户设定的手机号码就是这个手机号码。

看看这个!不行在问
http://www.yiichina.com/tutorial/89
这种情况用场景应该可以解决
unique不会这样的,如果修改自己是不会报错的
参考2楼刘先生说的方法或者自己写验证规则
可能是你使用判断唯一的属性是主键是吧,如果是主键的更新时unique就会报已存在
解决方法是使用id做主键或使用自定义判断
ajax远程验证的时候会出现这样的问题,这个就不是场景的问题,是ajax没有办法判断验证unique时忽略哪一条记录,有大神知道这种情况下怎么解决吗

这个rule怎么写[2.0]

dmdear阅读(64)

需求是这样的:要求选择时间范围,两个输入框 开始时间 和 结束时间 ,2个要求,当结束时间有内容,则开始时间不能为空,且结束时间应大于开始时间 。

我想着用 whenclient吧


['todate', '????',//问号这里该怎么填  
'message' => '结束时间应大于开始时间.',
'whenClient' =>"function (attribute, value) {
        return $('#todate').value > $('#fromdate').value;}"]

isset 如果判断不行就换成empty 或者等于空什么的判断,我不知道你传的是字符串还是什么
自己写认证规则!(例子)
http://www.jb51.net/article/82637.htm
自己写一个函数,楼上的办法
比较全面的写法,可以生成前端js
http://www.yiichina.com/tutorial/1233
2楼的办法我经常用

groupBy和sum这两个怎么使用呢[2.0]

likelyfrog阅读(54)

    $staffStatic=Staffstatic::find()->select("staffCode,staffName")->groupBy(['staffName','staffCode'])->where(['month'=>5])->sum("count")->asArray()->all();

我没这样用过,我给个思路,把某一个 fieldname 特意写错,然后会报错 sql的拼接方式,看看是否按你需要的方式在进行。
字面上看 应该差不多是这样拼接的

注册表单提交数据,保存到数据库里的数据跟提交的不一致?[2.0]

Marksea阅读(98)

The SQL being executed was: INSERT INTO user (mobile, password_hash, created_at, updated_at) VALUES (2147483647, ‘$2y$13$TG0Cx.luyaCs5DWF9IPIiuoz8jafhQJIJ9nS0F3y.cK0Zi4L0gFty’, 1494474469, 1494474469)。
我注册表单提交上来的是正常的手机号,为啥一保存就变成了2147483647这个玩意啦?

看看认证的文档吧,还有就是你这手机号明显截断了
password_hash, created_at, updated_at,这几个字段的值是系统自动生成的
应该不是数据库的问题应该是你用了intval(mobile)
http://php.net/manual/en/function.intval.php

跟着魏曦老大做博客教程[2.0]

coolsuper阅读(59)

我根据教程,搭建起后台,但是感觉后台有点不对

WX20170510-230023.png

我也没做过什么修改 为什么会出现这种情况?
大家有遇到过吗?谢谢

你的意思是撑开太长,是吗?
如果是的话,视频后面,完善的部分会讲解如何调整好的。
哪里不对了?看不出来
本来就是这样的吧,还是你是说内容太多,耐心看下去吧,在相对的view里面可以改那些英文
后面有专门提到,继续看下去

redirect跳转失败[2.0]

Markapple阅读(58)

Unknown Method – yii\base\UnknownMethodException

Calling unknown method: app\controllers\SiteController::redirect()

请问怎么办直接继承conroller基类就可,继承我自己的写的基类就出错 ,我自己的基类是继承controller

如果使用redirect请确定继承yii\web\controller,而不是yii\base\controller
顶楼上的回答

上传文件,自义错误信息[2.0]

CleverStone阅读(63)

上传文件时,如果限制了后缀,如何修改后缀不符时的错误信息?
默认是 Only files with these extensions are allowed:
怎么修改成自定义的?
[[‘file’], ‘file’, ‘skipOnEmpty’ => false, ‘extensions’ => ‘apk’, ‘message’=>’msg’],
这样写没作用。

自己个儿看看File这个验证器的提示信息用的什么
把 extensions 去掉,看是否ok,然后再慢慢调回来。

登录

找回密码

注册