小编Sad*_*san的帖子

在命令提示符中,PHP不被识别为内部或外部命令

当我运行命令时出现以下错误 php

C:\xampp\htdocs>php
'php' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

当我php在以下路径中运行命令时,我没有收到任何错误:

C:\xampp\php>php  //do not got error here
Run Code Online (Sandbox Code Playgroud)

为什么我会收到此错误?

'php'不被识别为内部或外部命令,可操作程序或批处理文件.

php cmd exe

88
推荐指数
7
解决办法
18万
查看次数

MongoDB:无法规范化查询:BadValue Projection不能混合使用包含和排除

我是使用CakePHP在MongoDB中更新的.

当我写下面的查询时,它会执行得很好.

db.testData.find()
{
    "_id" : ObjectId("53d1f79db8173a625961ff3d"),
    "name" : "sadikhasan",
    "created" : ISODate("2014-07-25T06:22:21.701Z")
}
Run Code Online (Sandbox Code Playgroud)

当我运行以下查询只获取名称但它显示错误时

db.testData.find({},{name:1, created:0})
error: {
    "$err" : "Can't canonicalize query: BadValue Projection cannot 
              have a mix of inclusion and exclusion.",
    "code" : 17287
}
Run Code Online (Sandbox Code Playgroud)

当我运行以下查询以获取只有名称时,name它执行良好.

db.testData.find({},{name:1, _id:0})
{ "name" : "sadikhasan" }
Run Code Online (Sandbox Code Playgroud)

我的qeustion是我name在投影列表中写错误的原因.提前感谢您的帮助.

mongodb mongodb-query

33
推荐指数
2
解决办法
3万
查看次数

如何检查jQuery查找返回true还是false?

HTML代码

<div class="parent1">
    <div class="child1">Child1</div>
    <div class="child2">Child2</div>
    <div class="child3">Child3</div>
</div>

<div class="parent2">
    <div class="child1">Child1</div>
    <div class="child2">Child2</div>
</div>
Run Code Online (Sandbox Code Playgroud)

jQuery代码

alert($(".parent1").find(".child3").text());
alert($(".parent2").find(".child3").text());
Run Code Online (Sandbox Code Playgroud)

我的问题是如何检查find函数返回true还是false?

在上面的代码中它返回空白值,其中parent1类具有child3parent2没有child3类的类.

JS小提琴

javascript jquery

33
推荐指数
4
解决办法
3万
查看次数

MySQL在group by之后获得第一个非null值

我有一个大表,数据不是唯一但需要.此表是多个联合选择的结果,因此不是实际表.由于其他原因,我不能把它变成一张真正的桌子.

所有UNION表都有一个电子邮件列,最终将是唯一的.结果记录如下所示:

1   ozzy@test.com   Ozzy
2   test@test.com   Tony
3   test@yahoo.com  Steve
4   tiny@test.com   
13  tony@gmail.com  Tony
14  test@test.com   Ozzy
15  test@yahoo.com  Dave
16  tiny@test.com   Tim
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,有些电子邮件会以不同的名称或不存在的名称出现.当我GROUP BY email在最后添加一个子句时,结果如下所示:

1   ozzy@test.com   Ozzy
2   test@test.com   Tony
3   test@yahoo.com  Steve
4   tiny@test.com   
13  tony@gmail.com  Tony
Run Code Online (Sandbox Code Playgroud)

如您所见,电子邮件4没有名称,因为它选择了名称的第一个条目NULL.然后我尝试使用GROUP_CONCAT哪个使结果看起来像这样:

1   ozzy@test.com   Ozzy
14  test@test.com   Ozzy,Tony
15  test@yahoo.com  Dave,Steve
16  tiny@test.com   Tim
13  tony@gmail.com  Tony
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,现在每个人都有一个名称,但有些行有多个名称已连接.我想要做的是GROUP BY emailNOT NULL每行的每一列中选择第一个条目,理论上如下:

1   ozzy@test.com   Ozzy
2   test@test.com   Tony
3   test@yahoo.com …
Run Code Online (Sandbox Code Playgroud)

mysql group-by group-concat

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

日期时间值不正确数据库错误号:1292

不正确的日期时间值0000-00-0000:00:00 +0000数据库错误号码:1292

大家好,我有一个问题,我的托管公司完成了服务器升级,我正在努力了解发生了什么,所以我可以解决问题

我的服务器最近已升级到服务器版本:5.6.17并且我在整个地方收到错误,说我的日期时间值不正确?

它似乎是在日期时间结束时添加+0000但我不知道为什么.这曾经在5.5上运行得很好但是最近的升级影响了我的时间戳的工作方式

Error Number: 1292

Incorrect datetime value: '2014-04-02 08:49:43 +0000' for column 'created' at row 1

INSERT INTO `activitylog` (`tablename`, `row`, `user_id`, `description`, `action`, `private`,`created`) VALUES ('user', '1', '1', 'People', 'Updated', 0, '2014-04-02 08:49:43 +0000')
Run Code Online (Sandbox Code Playgroud)

如果我在没有+0000的情况下修改这个sql查询,它有效吗?

它影响我桌子上任何类型的DATETIME.

有没有其他人有类似的问题,现在解决方案是让它工作.目前,我需要更改所有PHP函数以回显日期/时间,而不是在查询字符串上调用NOW()

php mysql database datetime

24
推荐指数
6
解决办法
6万
查看次数

使用ajax调用下载PHPExcel

App::import('Vendor', 'PHPExcel/Classes/PHPExcel');
$objPHPExcel = new PHPExcel();
$objPHPExcel->getActiveSheet()->setTitle('ReceivedMessages');
header('Content-Type: application/vnd.ms-excel');
$file_name = "kpi_form_".date("Y-m-d_H:i:s").".xls";
header("Content-Disposition: attachment; filename=$file_name");
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
Run Code Online (Sandbox Code Playgroud)

当我直接从浏览器调用上面的代码时,会下载结果文件.但是如果我对上面的代码进行ajax调用,我就不会得到下载提示.我可以从控制台选项卡中看到ajax调用已成功完成,并在响应数据中看到一堆随机字符.我假设那是excel对象.

有谁知道如何使用ajax实现下载excel功能?我不想刷新页面.当用户点击"导出"按钮时,应该对php文件进行ajax调用并提示用户下载.

php ajax jquery phpexcel

15
推荐指数
3
解决办法
4万
查看次数

mysql - 从InnoDB删除行非常慢

我有一个mysql数据库约.1 TB的数据.表fuelinjection_stroke有apprx.1.000.000.000行.DBID是每个插入时自动递增1的主键.

我试图使用一个非常简单的语句删除前1.000.000行:

Delete from fuelinjection_stroke where DBID < 1000000;
Run Code Online (Sandbox Code Playgroud)

在我的专用8核Xeon服务器(32 GB内存,SAS存储)上,此查询需要很长时间(> 24小时).

不知道这个过程是否可以加速?

mysql sql innodb

12
推荐指数
4
解决办法
3万
查看次数

JQuery验证输入文件类型

我有一个可以有数百个<input type="file">元素的表单.我根据动态添加到页面的数量顺序命名它们.

例如:

<input type="file" required="" name="fileupload1" id="fileupload1">
<input type="file" required="" name="fileupload2" id="fileupload2">
<input type="file" required="" name="fileupload3" id="fileupload3">
<input type="file" required="" name="fileupload999" id="fileupload999">
Run Code Online (Sandbox Code Playgroud)

在我的JQuery中,我想在可接受的MIME /文件类型上验证这些输入.像这样:

$("#formNew").validate({
    rules: {
        fileupload: {
            required: true, 
            accept: "image/jpeg, image/pjpeg"
        }
    }
Run Code Online (Sandbox Code Playgroud)

我的问题是name输入文件元素的属性是动态的.它必须是动态的,以便我的Web应用程序可以正确处理每个上载.所以显然使用"fileupload"不会在规则部分工作.

如何为所有名称为"fileupload"的输入设置规则?

这是动态添加输入的代码:

var filenumber = 1;
$("#AddFile").click(function () { //User clicks button #AddFile
    $('<li><input type="file" name="FileUpload' + filenumber + '" id="FileUpload' + filenumber + '" required=""/> <a href="#" class="RemoveFileUpload">Remove</a></li>').prependTo("#FileUploader");
    filenumber++;
    return false;
});
$("#FileUploader").on('click', '.RemoveFileUpload', function () { …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-validate

11
推荐指数
1
解决办法
9万
查看次数

UpdateAll的魔力

我在cakephp for和updateAll查询中编写了下面的代码

$this->loadModel('User');
$this->User->updateAll(array('stauts'=>'active'),array());
Run Code Online (Sandbox Code Playgroud)

上面代码的等效SQL查询就是这样生成的

UPDATE User SET status='active' WHERE 0 = 1;
Run Code Online (Sandbox Code Playgroud)

当我在cakephp中写下updateAll时,如下所示

$this->loadModel('User');
$this->User->updateAll(array('stauts'=>'active'));
Run Code Online (Sandbox Code Playgroud)

此代码的等效SQL查询是这样生成的

UPDATE User SET status='active';
Run Code Online (Sandbox Code Playgroud)

我不知道为什么会这样.

如果您不理解我的问题,请在评论中告诉我,我会在短期内解释.

cakephp cakephp-2.0

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

用数组中的空格和大写第一个字符替换下划线

我有以下数组.

$state = array("gujarat","andhra_pradesh","madhya_pradesh","uttar_pradesh");
Run Code Online (Sandbox Code Playgroud)

预期产出

$state = array("Gujarat","Andhra Pradesh","Madhya Pradesh","Uttar Pradesh");
Run Code Online (Sandbox Code Playgroud)

我想用一个单词的每个第一个字符转换数组值UpperCase并替换_space.所以我使用这个循环来做它并按预期工作.

foreach($states as &$state)
 {
    $state = str_replace("_"," ",$state);
    $state = ucwords($state);
 }
Run Code Online (Sandbox Code Playgroud)

但我的问题是:是否有任何PHP函数可以根据我的要求转换整个数组?

php arrays

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