问题列表 - 第24151页

isset和!空不通过检查上传的文件

我有一个上传表单,上传了一个文件.我遇到的问题是,即使没有上传文件,if(isset($ _ FILES))或者if(!empty($ _ FILES))仍然成功通过:

$_FILES = $HTTP_POST_FILES;
if($_POST['type'] == 'photo' && isset($_FILES)){
// returns true even if no file is uploaded. What am I missing!
}
Run Code Online (Sandbox Code Playgroud)

php file-upload isset

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

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

使用boost :: accumulators对值之间的增量进行采样

我有一个包含N个样本的数据集(比如说,13,16,17,20),其中每个下一个样本都会增加一些值(在这种情况下为3,1,3),我想找到第二个序列的各种统计数据.

样本是以递增方式收集的时间戳(即并非所有样本都可以一次获得),因此我想使用boost::accumulators::accumulator_set它看起来像适合账单的东西.

我希望能够做到这样的事情:

accumulator_set< double, features< tag::mean > > acc;
...
acc(13);
acc(16);
acc(17);
acc(20);
Run Code Online (Sandbox Code Playgroud)

... 但是采样差异而不是实际值.

如何在accumulator_set不手动跟踪最后一个值的情况下执行此操作?

c++ boost

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

在ASP.NET MVC中搜索路径

我的母版页中有一个简单的搜索表单和一个serach控制器和视图.我正在尝试为字符串搜索术语"myterm"(例如)获取以下路由:root/search/myterm

母版页中的表单:

<% using (Html.BeginForm("SearchResults", "Search", FormMethod.Post, new { id = "search_form" }))
                           { %>
                        <input name="searchTerm" type="text" class="textfield" />
                        <input name="search" type="submit" value="search" class="button" />
                        <%} %>
Run Code Online (Sandbox Code Playgroud)

控制器行动:

public ActionResult SearchResults(string searchTerm){...}
Run Code Online (Sandbox Code Playgroud)

我正在使用的路线:

routes.MapRoute(
          "Search",
          "search/{term}",
          new { controller = "Search", action = "SearchResults", term = (string)null }
        );

routes.MapRoute(
          "Default",
          "{controller}/{action}",
          new { controller = "Home", action = "Index" }
        );
Run Code Online (Sandbox Code Playgroud)

无论我输入什么搜索词,我总是在没有搜索词的情况下获取网址"root/search".

谢谢.

asp.net asp.net-mvc search action routes

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

MySQL查询性能 - 时间上的巨大差异

我有一个查询在两个数据集之间返回的时间差异很大.对于一组(数据库A),它会在几秒钟内返回,而另一组(数据库B)......我还没有等待足够长的时间,但是超过10分钟.我已将这两个数据库转储到本地计算机,我可以重现运行MySQL 5.1.37的问题.

奇怪的是,数据库B小于数据库A.

重现问题的查询的精简版本是:

SELECT * FROM po_shipment ps 
JOIN po_shipment_item psi USING (ship_id) 
JOIN po_alloc pa ON ps.ship_id = pa.ship_id AND pa.UID_items = psi.UID_items 
JOIN po_header ph ON pa.hdr_id = ph.hdr_id 
LEFT JOIN EVENT_TABLE ev0 ON ev0.TABLE_ID1 = ps.ship_id AND ev0.EVENT_TYPE = 'MAS0' 
LEFT JOIN EVENT_TABLE ev1 ON ev1.TABLE_ID1 = ps.ship_id AND ev1.EVENT_TYPE = 'MAS1' 
LEFT JOIN EVENT_TABLE ev2 ON ev2.TABLE_ID1 = ps.ship_id AND ev2.EVENT_TYPE = 'MAS2' 
LEFT JOIN EVENT_TABLE ev3 ON ev3.TABLE_ID1 = ps.ship_id AND ev3.EVENT_TYPE = 'MAS3' …
Run Code Online (Sandbox Code Playgroud)

mysql optimization sql-execution-plan

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

Haskell中的CPP扩展和多行文字

是否可以在包含多行字符串文字的Haskell代码上使用CPP扩展?Haskell还有其他条件编译技术吗?

例如,我们来看看这段代码:

-- If the next line is uncommented, the program does not compile.
-- {-# LANGUAGE CPP #-}

msg = "Hello\
  \ Wor\
  \ld!"

main = putStrLn msg
Run Code Online (Sandbox Code Playgroud)

如果我取消注释{-# LANGUAGE CPP #-},那么GHC会用一个词法错误来反驳这段代码:

[1 of 1] Compiling Main             ( cpp-multiline.hs, cpp-multiline.o )

cpp-multiline.hs:4:17:
    lexical error in string/character literal at character 'o'
Run Code Online (Sandbox Code Playgroud)

使用GHC 6.12.1,可以使用cpphs.

我确认使用cpphs.compat包装器和-pgmP cpphs.compat选项有帮助,但我希望有一个不依赖于自定义shell脚本的解决方案.-pgmP cpphs不起作用.

PS我需要为GHC <6.12和GHC> = 6.12使用不同的代码,是否可以不使用预处理器?

UPD.除了接受Ganesh的答案之外,我还发现另一个解决方法是将所有条件声明放在一个单独的模块中{-# LANGUAGE CPP #-},从而避免使用多行字符串的模块中的CPP.

preprocessor haskell conditional-compilation ghc

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

构造函数+依赖注入

如果我正在编写一个包含多个构造函数参数的类,例如:

class A{
    public A(Dependency1 d1, Dependency2 d2, ...){}
}
Run Code Online (Sandbox Code Playgroud)

我通常会创建一个"参数持有者"类的类,如:

class AArgs{
    public Dependency1 d1 { get; private set; }
    public Dependency2 d2 { get; private set; }
    ...
}
Run Code Online (Sandbox Code Playgroud)

然后:

class A{
    public A(AArgs args){}
}
Run Code Online (Sandbox Code Playgroud)

通常,使用DI容器我可以为依赖关系配置构造函数并解析它们,因此当构造函数需要更改时,影响最小.

这被认为是反模式和/或反对这样做的任何论据吗?

c# oop dependency-injection

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

通过DTE按类型名称查找ProjectItem

给定一个类型名称,是否可以使用DTE来查找该类型所在的ProjectItem?类似于Navigate To...对话框在Visual Studio 2010中的工作方式.

我能找到的最接近的是Solution.FindProjectItem,但这需要一个文件名.

谢谢!

vspackage envdte vs-extensibility projectitem

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

解释段错误消息

以下段错误消息的正确解释是什么?

segfault at 10 ip 00007f9bebcca90d sp 00007fffb62705f0 error 4 in libQtWebKit.so.4.5.2[7f9beb83a000+f6f000]
segfault at 10 ip 00007fa44d78890d sp 00007fff43f6b720 error 4 in libQtWebKit.so.4.5.2[7fa44d2f8000+f6f000]
segfault at 11 ip 00007f2b0022acee sp 00007fff368ea610 error 4 in libQtWebKit.so.4.5.2[7f2aff9f7000+f6f000]
segfault at 11 ip 00007f24b21adcee sp 00007fff7379ded0 error 4 in libQtWebKit.so.4.5.2[7f24b197a000+f6f000]
Run Code Online (Sandbox Code Playgroud)

linux qt kernel webkit segmentation-fault

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

救命 !如何从SQL Server分页过程中获取总行数?

好的,我的SQL Server数据库中有一个存储注释的表.我的愿望是能够使用我的数据列表中的[Back],[Next],页码和[Last]按钮来浏览记录.我认为最有效的方法是使用只返回特定范围内的特定行数的存储过程.这就是我想出的

@PageIndex INT, 
@PageSize INT,
@postid int


AS
 SET NOCOUNT ON  
 begin

WITH tmp AS ( 
SELECT comments.*, ROW_NUMBER() OVER (ORDER BY dateposted ASC)  AS  Row
    FROM    comments
    WHERE     (comments.postid = @postid))

SELECT tmp.*
FROM tmp
WHERE Row between 

(@PageIndex - 1) * @PageSize + 1 and @PageIndex*@PageSize

end

RETURN 
Run Code Online (Sandbox Code Playgroud)

现在一切正常,我已经能够在我的数据列表寻呼机中实现[Next]和[Back]按钮.现在我需要所有注释的总数(不在当前页面中),以便我可以在我的寻呼机上实现我的页码和[Last]按钮.换句话说,我想在第一个select语句中返回总行数,即

  WITH tmp AS ( 
    SELECT comments.*, ROW_NUMBER() OVER (ORDER BY dateposted ASC)  AS  Row
        FROM    comments
        WHERE     (comments.postid = @postid))
set @TotalRows = @@rowcount
Run Code Online (Sandbox Code Playgroud)

@@ rowcount不起作用并引发错误.我也无法计算.*也可以工作.

有没有其他方法来获得总行数或我的方法注定失败.

sql-server-2005 data-paging

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