小编Dan*_*Dan的帖子

使用Ajax以一种形式上传数据和文件?

我正在使用jQuery和Ajax为我的表单提交数据和文件,但我不确定如何以一种形式发送数据和文件?

我目前对这两种方法的做法几乎相同,但数据收集到数组的方式不同,数据使用.serialize();但文件使用= new FormData($(this)[0]);

是否可以将两种方法结合起来,以便能够通过Ajax以一种形式上传文件和数据?

数据jQuery,Ajax和html

$("form#data").submit(function(){

    var formData = $(this).serialize();

    $.ajax({
        url: window.location.pathname,
        type: 'POST',
        data: formData,
        async: false,
        success: function (data) {
            alert(data)
        },
        cache: false,
        contentType: false,
        processData: false
    });

    return false;
});

<form id="data" method="post">
    <input type="text" name="first" value="Bob" />
    <input type="text" name="middle" value="James" />
    <input type="text" name="last" value="Smith" />
    <button>Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)

文件jQuery,Ajax和html

$("form#files").submit(function(){

    var formData = new FormData($(this)[0]);

    $.ajax({
        url: window.location.pathname,
        type: 'POST',
        data: formData,
        async: false,
        success: function (data) {
            alert(data) …
Run Code Online (Sandbox Code Playgroud)

javascript forms ajax jquery

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

有没有更简单的方法来实现这种用户消息传递方式?

我为用户创建了一个消息传递系统,它允许他们向另一个用户发送消息.如果这是他们第一次说话,那么就会启动新的会话,如果不是旧的会话继续.

用户收件箱列出了用户与所有其他用户进行的所有对话,然后由具有最新帖子的对话对这些对话进行排序.

用户只能与另一个用户进行一次对话.

当用户点击其中一个对话时,他们会被带到一个页面,显示他们在顶部有最新帖子的整个对话.所以它有点像消息聊天功能.

我有两张桌子:

  • userconversation
  • usermessages

userconversation

包含一个自动增量ID,它是会话ID,以及userId和friendId.

无论是谁发起第一个对话都将是userId和收件人friendId,这将永远不会改变该对话.

+----+--------+----------+
| id | userId | friendId |
+----+--------+----------+
Run Code Online (Sandbox Code Playgroud)

usermessages

包含特定消息,以及读取标志,时间和conversationId

+----+---------+--------+------+------+----------------+
| id | message | userId | read | time | conversationId |
+----+---------+--------+------+------+----------------+
Run Code Online (Sandbox Code Playgroud)

这个怎么运作

当用户转到另一个用户的消息时,将运行查询以检查两个用户是否在userconversation表中匹配,如果是,conversationId则使用该会话并且会话继续进行,如果不是,则为他们创建具有唯一的新行conversationId.

它变得复杂的地方

到目前为止一切都很好,但是当涉及到显示所有对话的消息收件箱时,按照最新的帖子进行排序,一个查询就变得棘手了.

为了能够列出对话,您必须首先找到每个对话的最新帖子,但由于您无法在组之前订购,因此无法对两个表上的一个查询进行排序,因此我必须使用以下内容:

SELECT  
    c.id,
    c.userId,
    c.friendId,
    m2.message,
    m2.read,
    UNIX_TIMESTAMP(m2.time),      
    user1.username,
    user2.username  
FROM 
    (SELECT MAX(m1.id) AS MessageID 
     FROM usermessages m1 
     GROUP BY m1.conversationId) latest_msg

INNER JOIN usermessages m2 ON latest_msg.MessageID = m2.id 
INNER JOIN userconversation c ON m2.conversationId …
Run Code Online (Sandbox Code Playgroud)

mysql sql database database-design innodb

28
推荐指数
2
解决办法
1985
查看次数

嵌入iframe时HTML5游戏触摸问题

我正试图在iframe中嵌入HTML5游戏,以便在iPad和iPhone等移动设备上的浏览器中显示.

如果您直接在iPad上访问它们,它们可以正常工作.

但是如果你使用iframe嵌入它们,那么当你触摸游戏然后放手时,游戏就会暂停.

有没有办法阻止这种iframe行为,以便他们按照自己的意愿行事?

当你停止触摸并且它认为你的空置和停顿时,似乎可能会失去焦点?

在模拟器中尝试下面的两个示例链接,您将看到问题

我正在使用的代码(基本)

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Game</title>
</head>    
<body>

<div>
  <iframe src="http://static.tresensa.com/madcab/index.html?dst=A0000" frameborder="0" scrolling="no" width="960" height="536"></iframe>
</div>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我试过的

css样式以更改交互类型

<div style="overflow:auto;-webkit-overflow-scrolling:touch;">
    <iframe src="" height="" height=""></iframe>
</div>
Run Code Online (Sandbox Code Playgroud)

JS防止默认

<script>
document.ontouchmove = function(e) {
    e.preventDefault();
};
</script>
Run Code Online (Sandbox Code Playgroud)

......都没有帮助

css embed iframe html5 ios

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

在bindParam中使用LIKE进行MySQL PDO查询

我已经阅读了关于如何编写这些查询的多个示例,但我正在努力使这个特定的类似于在使用时运行 bindParam

这是匹配以a开头的用户名的正确方法吗?

$term = "a";
$term = "'$term%'";

$sql = "SELECT username 
        FROM `user` 
        WHERE username LIKE :term 
        LIMIT 10";      

$core = Connect::getInstance();

$stmt = $core->dbh->prepare($sql);
$stmt->bindParam(':term', $term, PDO::PARAM_STR);
$stmt->execute();
$data = $stmt->fetchAll();
Run Code Online (Sandbox Code Playgroud)

php mysql database pdo

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

CSS nth-child表达式,以避免最后一行包含最多3个元素

我创建三列显示列表,每<li>有一个border-bottom像这样:

x | x | x
---------    
x | x | x
---------      
z | z | z
---------  

<ul>
    <li>x</li><li>x</li><li>x</li>
    <li>x</li><li>x</li><li>x</li>
    <li>z</li><li>z</li><li>z</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我想要做的是创建一个nth-child表达式来删除border-bottom最后一行的三个,所以对于上面的例子,它将是:

ul li:nth-child(-n+6) {
    border-bottom:0;
}
Run Code Online (Sandbox Code Playgroud)

问题

但是,如果它变得稍微复杂一点,那么列表中的项目数量会有所不同,因此可能出现以下任何情况:

场景1

x | x | x
---------   
x | x | x
---------   
z |
---  

<ul>
    <li>x</li><li>x</li><li>x</li>
    <li>x</li><li>x</li><li>x</li>
    <li>z</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

情景2

x | x | x
---------   
x | x | x
---------   
z | z |
-------

<ul>
    <li>x</li><li>x</li><li>x</li>
    <li>x</li><li>x</li><li>x</li> …
Run Code Online (Sandbox Code Playgroud)

css css-selectors css3

15
推荐指数
2
解决办法
8386
查看次数

filectime vs filemtime用于文件修改时间?

我试图确保一些图像在被修改时不被缓存但是哪个更适合这个filectimefilemtime

我真的看不出php手册有多大区别?要么更快?

<img src="/images/123.png?<?=md5(@filectime("/images/123.png"))?>" />
<img src="/images/123.png?<?=md5(@filemtime("/images/123.png"))?>" />
Run Code Online (Sandbox Code Playgroud)

还有这样的函数不会发出e_warning文件错误吗?

理想情况下,我不想只提供问号 <img src="/images/123.png?" />

php caching

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

Laravel - RuntimeException - 无法扫描"app/tests/TestCase.php"中的类

我一直在使用Laravel来显示一个月左右的自定义博客,而且它一直运行良好.

我只是看看我的网站,它说:

/vendor/symfony/security/Symfony/Component/Security/Core/Util/SecureRandom.php): failed to open stream: No such file or directory
Run Code Online (Sandbox Code Playgroud)

查看文件夹后,上面文件的位置实际上是:

/vendor/symfony/security-core/Symfony/Component/Security/Core/Util/SecureRandom.php): failed to open stream: No such file or directory
Run Code Online (Sandbox Code Playgroud)

但我没有改变这个?

如果我尝试运行,composer update我会收到此错误:

root@server [/laravel]# composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Writing lock file
Generating autoload files

  [RuntimeException]
  Could not scan for classes inside "app/tests/TestCase.php" which does not appear to be a file nor a folder
Run Code Online (Sandbox Code Playgroud)

是什么导致了这个或者我应该如何修复它?

laravel laravel-4

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

如何将数组值添加到新FormData?

在表单提交上,我使用jQuery来收集包含文件的数据,并使用以下方法创建表单值的FormData对象:

var formData = new FormData($("form#formid")[0]);
Run Code Online (Sandbox Code Playgroud)

但是我如何添加另一个值,这是这个FormData对象的关键?

javascript jquery

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

Swift使用hash_hmac和ripemd160散列一个字符串

我试图在Swift 3(和/或目标C)中散列一个String ripemd160来模拟以下php的输出:

$string = 'string';
$key = 'test';

hash_hmac('ripemd160', $string, $key);

// outputs: 37241f2513c60ae4d9b3b8d0d30517445f451fa5
Run Code Online (Sandbox Code Playgroud)


至今:

我已经尝试过查找hash_hmac我能找到的功能,例如:
在swift中实现HMAC和SHA1加密

enum HMACAlgorithm {
    case MD5, SHA1, SHA224, SHA256, SHA384, SHA512, RIPEMD160

    func toCCHmacAlgorithm() -> CCHmacAlgorithm {
        var result: Int = 0
        switch self {
        case .MD5:
            result = kCCHmacAlgMD5
        case .SHA1:
            result = kCCHmacAlgSHA1
        case .SHA224:
            result = kCCHmacAlgSHA224
        case .SHA256:
            result = kCCHmacAlgSHA256
        case .SHA384:
            result = kCCHmacAlgSHA384
        case .SHA512:
            result = kCCHmacAlgSHA512
        case .RIPEMD160:
            result = kCCHmacAlgRIPEMD160 …
Run Code Online (Sandbox Code Playgroud)

hash cryptography objective-c swift

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

使用喜欢/不喜欢和每日平均观看次数的排名算法

我目前正在使用贝叶斯排名算法在网站上对视频进行排名,每个视频都有:

  • likes
  • dislikes
  • views
  • upload_date

任何人都可以likedislike视频,视频总是views + 1在观看时,所有视频都具有独特性upload_date.


数据结构

数据采用以下格式:

|  id  |  title    |  likes  |  dislikes  |  views  |  upload_date  |
|------|-----------|---------|------------|---------|---------------|
|  1   | Funny Cat |    9    |     2      |   18    |  2014-04-01   |
|  2   | Silly Dog |    9    |     2      |   500   |  2014-04-06   |
|  3   | Epic Fail |    100  |     0      |   200   |  2014-04-07   |
|  4   | Duck Song | …
Run Code Online (Sandbox Code Playgroud)

mysql sorting algorithm statistics ranking

9
推荐指数
2
解决办法
2403
查看次数