小编vis*_*huB的帖子

MySql - 创建表如果不存在那么截断?

这是更新的问题:

当前查询正在执行以下操作:

$sql1 = "TRUNCATE TABLE fubar";
$sql2 = "CREATE TEMPORARY TABLE IF NOT EXISTS fubar SELECT id, name FROM barfu";
Run Code Online (Sandbox Code Playgroud)

第一次运行包含此方法的方法时,它会在truncate上生成错误消息,因为该表尚不存在.

是我唯一的选择CREATE TABLE,运行TRUNCATE TABLE,然后填写表格?(3个单独的查询)

原来的问题是:

我一直很难在MySql中找出以下内容是否可行,而无需编写块sql:

CREATE TABLE fubar IF NOT EXISTS ELSE TRUNCATE TABLE fubar
Run Code Online (Sandbox Code Playgroud)

如果我在create table之前单独运行truncate,并且该表不存在,那么我会收到一条错误消息.我试图消除该错误消息,而不必添加任何更多的查询.

此代码将使用PHP执行.

mysql truncate exists

21
推荐指数
1
解决办法
8万
查看次数

索引<或> MySQL查询?

如果我有一个查询,

DELETE FROM table WHERE datetime_field < '2008-01-01 00:00:00'
Run Code Online (Sandbox Code Playgroud)

确实具有datetime_field列索引的帮助?即,索引仅在使用相等(或不等式)测试时有用,或者在进行有序比较时是否有用?

(更好地执行此查询的建议,无需重新创建表,也可以!)

mysql indexing optimization

10
推荐指数
1
解决办法
2363
查看次数

请求 - 从rails服务器到rails服务器上的ruby的响应.CSRF令牌问题

我们正在计划php脚本与rails服务器上的ruby之间的交互,反之亦然.

每当我从php脚本卷曲发布数据时,在rails服务器通知显示 - "Can't verify CSRF token authenticity".

我在传递authenticity_token参数.我们需要如何在rails服务器上以安全的方式使用此令牌.

<?php

    class active_merchant{    
        private $endpoint_url;      // server address or url where data is to be posted.
        private $params;            // form fields
        private $fields_count;      // count of fields in credit card

        public function __construct(){

            $this->endpoint_url = "http://localhost:8080/activemerchant/index";
            $token = md5('random');
            $this->params = array('name'=>'test','authenticity_token'=>$token);

        }

        /*  function curl_post
            makes a curl post to the end point url
            global variables 
             */

        public function curl_post(){

            try{

                $ch = curl_init();
                curl_setopt($ch, CURLOPT_URL, $this->endpoint_url); …
Run Code Online (Sandbox Code Playgroud)

php ruby curl ruby-on-rails ruby-on-rails-3

7
推荐指数
1
解决办法
404
查看次数

Yii2翻译不起作用

我有Yii2高级模板,我想为我的前端视图设置翻译,这是我做的:

frontend/config/main.php:

'sourceLanguage'=>'en-US',
'language'=>'en-US',
'components' => [
'i18n' => [
     'translations' => [
           'app*' => [
                'class' => 'yii\i18n\PhpMessageSource',
                'basePath' => '@common/messages',
                'sourceLanguage' => 'en-US',
                'fileMap' => [
                     'app' => 'app.php',
                     'app/error' => 'error.php',
                 ],
            ],
        ],
     ],
]
Run Code Online (Sandbox Code Playgroud)

然后我加入i18n.phpcommon/config:

<?php
return [
    'sourcePath' => __DIR__. '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR,
    'languages' => ['fr-FR','en-US'], //Add languages to the array for the language files to be generated.
    'translator' => 'Yii::t',
    'sort' => …
Run Code Online (Sandbox Code Playgroud)

php internationalization yii2

6
推荐指数
1
解决办法
4194
查看次数

如何计算两个日期之间的星期天数

我试过下面的JS:

var start = new Date("25-05-2016");
var finish = new Date("31-05-2016");
var dayMilliseconds = 1000 * 60 * 60 * 24;
var weekendDays = 0;
while (start <= finish) {
  var day = start.getDay()
  if (day == 0) {
    weekendDays++;
  }
  start = new Date(+start + dayMilliseconds);
}
alert(weekendDays);
Run Code Online (Sandbox Code Playgroud)

但是,它给出了错误的输出。

我需要获得两个日期之间星期日总数

javascript

5
推荐指数
2
解决办法
2869
查看次数

无法打开标签内带有按钮的文件对话框

为了隐藏(但保留功能)文件对话框中丑陋的默认输入类型文件按钮,我使用了以下机制:

HTML:

    <label for="file-input">
        <i class="fa fa-edit"></i> <!-- acts as file input on click-->
    </label>
    <input type="file" id="file-input" />
Run Code Online (Sandbox Code Playgroud)

CSS:

#file-input {
    display: none; //hide the file input
}
Run Code Online (Sandbox Code Playgroud)

这符合预期:我单击 font Awesome 编辑图标,然后弹出文件对话框。

但是,当我使用按钮时,它会停止工作。单击按钮时没有看到文件对话框:

    <label for="file-input">
        <button type="button">Upload file</button> <!-- not working-->
    </label>
    <input type="file" id="file-input" />
Run Code Online (Sandbox Code Playgroud)

html css

3
推荐指数
1
解决办法
2531
查看次数

在MySQL中强制使用唯一的行

我有一个表MySQL有3个字段,我想强制两个字段之间的唯一性.这是表格DDL:

CREATE TABLE `CLIENT_NAMES` (
`ID` int(11) NOT NULL auto_increment,
`CLIENT_NAME` varchar(500) NOT NULL,
`OWNER_ID` int(11) NOT NULL,
PRIMARY KEY  (`ID`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Run Code Online (Sandbox Code Playgroud)

ID字段是代理键(此表正在加载ETL).该CLIENT_NAME字段包含客户端名称.id OWNER_ID是指示客户所有者.

我以为我可以用一个唯一索引执行本CLIENT_NAMEOWNER_ID,

ALTER TABLE `DW`.`CLIENT_NAMES` 
ADD UNIQUE INDEX enforce_unique_idx(`CLIENT_NAME`, `OWNER_ID`);
Run Code Online (Sandbox Code Playgroud)

但是MySQL给了我一个错误:

执行SQL命令以更新表时出错.指定密钥太长; 最大密钥长度为765字节(错误1071)

其他人有什么想法吗?

mysql indexing mysql-error-1071

2
推荐指数
1
解决办法
1500
查看次数

如何在yii2 Timepicker小部件中获取默认时间?

它显示当前时间作为验证工作的默认时间,但是,我想要自定义默认时间.

这是我的代码:

<?= $form->field($model, 'e_start_time')->widget(TimePicker::className(),  
     [
        'readonly' => true,                     
        'pluginOptions' => [
                'minuteStep' => 5,
                'showMeridian' => true,
        ],
        'options'=>[
            'class'=>'form-control',
        ],
    ]); ?>
Run Code Online (Sandbox Code Playgroud)

php yii2

2
推荐指数
1
解决办法
3017
查看次数

MySQL LEFT JOIN SELECT不选择所有左侧记录?

我从一个MySQL SELECT涉及a 的查询得到了奇怪的结果LEFT JOIN,我无法理解我的理解LEFT JOIN是错误的还是我看到了一个真正奇怪的行为.

我有两个表有多对一关系的表:对于每个记录中table 1有0个或更多记录table 2.我想选择表1中的所有记录,其中的列计算表2中相关记录的数量.据我所知,LEFT JOIN应始终返回LEFT语句一侧的所有记录.

这是一个展示问题的测试数据库:

CREATE DATABASE Test;
USE Test;

CREATE TABLE Dates (
   dateID INT UNSIGNED NOT NULL AUTO_INCREMENT,
   date DATE NOT NULL,
   UNIQUE KEY (dateID)
) TYPE=MyISAM;


CREATE TABLE Slots (
   slotID INT UNSIGNED NOT NULL AUTO_INCREMENT,
   dateID INT UNSIGNED NOT NULL,
   UNIQUE KEY (slotID)
) TYPE=MyISAM;

INSERT INTO Dates (date) VALUES ('2008-10-12'),('2008-10-13'),('2008-10-14');
INSERT INTO Slots (dateID) VALUES (3); …
Run Code Online (Sandbox Code Playgroud)

mysql sql join

1
推荐指数
1
解决办法
4868
查看次数

Yii -Class'frontend\controllers\UserForm'未找到错误

Yii框架工作我放在 UserFrom.phproot/models文件夹代码中是下面的

<?
namespace app\models;
use yii\base\Model;

class UserForm extends Model
{

    public $name;
    public $email;

    public function rules()
    {
        return[[['name','email'],'required'],
                ['email','email'],]
    }

}

?>
Run Code Online (Sandbox Code Playgroud)

并修改root/frontend/controllers/ Sitecontroller.php文件.添加以下代码

public function actionUser()
{
    $model=new UserForm;
    if($model->load(Yii::$app->request->post()) && $model->valideate())
    {

    }
    else
    {
        return $this->render('userForm',['model'=>$model] );
    }
}
Run Code Online (Sandbox Code Playgroud)

然后最后在root/views/site/userForm.php其代码中添加新文件

<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php $form=ActiveForm::begin();?>
<?php $form->field($model,'name'); ?>
<?php $form->field($model,'email'); ?>
<?php Html::submitButton('Submit',['class'=>'btn btn-success']);
Run Code Online (Sandbox Code Playgroud)

如果我打开网址我收到错误网址= http://localhost/yiicomm/frontend/web/index.php?r =网站/用户

PHP致命错误 - yii\base\ErrorException未找到类'frontend\controllers\UserForm'.我觉得我正确地放置但得到错误.我的代码有什么问题

php yii2

1
推荐指数
1
解决办法
5208
查看次数

Yii2 Advance Application在前端和后端删除'/ web'和'index.php'

我参考了下面给出的链接

Yii2 htaccess - 如何隐藏前端/ web和后端/ web完全

从yii2中的前端和后端删除web文件夹后,从url中删除index.php

但是,我没有得到输出

显示在URL下方

本地主机/ yii2advance /后端/网络/的index.php?R =站点%2Flogin

本地主机/ yii2advance /前端/网络/的index.php?R =站点%2Flogin

在上面的网址我删除/web/index.php了两个frontendbackend

我得到的URL就像

本地主机/ yii2advance /后端/网站/登录

本地主机/ yii2advance /前端/网站/登录

yii2 yii2-advanced-app

1
推荐指数
1
解决办法
3034
查看次数

在 Yii2 中使用模型连接表

这是表1

id1  Name
------------
 1   value1
 2   value2
Run Code Online (Sandbox Code Playgroud)

这是表2

id2  Name     id1
---------------------
 1   value1    2
 2   value2    1
Run Code Online (Sandbox Code Playgroud)

这是表3

id3  Name     id2
---------------------
 1   value1    2
 2   value2    1
Run Code Online (Sandbox Code Playgroud)

这是表4

id4  Name     id3
---------------------
 1   value1    2
 2   value2    1
Run Code Online (Sandbox Code Playgroud)

我想用模型连接 Yii2中的上述 4 个表

select * from table1 
left join table2 on table2.id2 = table1.id1
left join table3 on table2.id3 = table1.id2
left join table4 on table2.id4 = table1.id3
Run Code Online (Sandbox Code Playgroud)

left-join yii yii2

1
推荐指数
1
解决办法
9192
查看次数

如何获得两个日期之间的星期日

我试试这个

<?php
    $startdate = '2016-07-15';
    $enddate = '2016-07-17';
    $sundays = [];
    $startweek=date("W",strtotime($startdate));
    $endweek=date("W",strtotime($enddate));
    $year=date("Y",strtotime($startdate));

    for($i=$startweek;$i<=$endweek;$i++) {
        $result=$this->getWeek($i,$year);
        if($result>$startdate && $result<$enddate) {
            $sundays[] = $result;
        }
    }
    print_r($sundays);

    public function getWeek($week, $year)
    {
       $dto = new \DateTime();
       $result = $dto->setISODate($year, $week, 0)->format('Y-m-d');
       return $result;
    }
?>
Run Code Online (Sandbox Code Playgroud)

这个返回空白数组.但在两个日期之间2016-07-17是星期天.

我输出为 2016-07-17

在这里提到这个 但是在这个链接中返回输出为星期日没有日期.

php

0
推荐指数
1
解决办法
2406
查看次数