我目前正在使用这个正则表达式^[A-Z0-9 _]*$来接受字母,数字,空格和下划线.我需要修改它以在字符串中的某处需要至少一个数字或字母.任何帮助,将不胜感激!
这将用于验证我的网站的用户名.我实际上想支持尽可能多的字符,但只是想确保我阻止代码注入,并且字符对所有用户都显示正常.因此,我肯定对正则表达式验证建议持开放态度,这些建议可以支持更广泛的字符集.
我在SQL查询中使用sum()寻求帮助:
SELECT links.id,
count(DISTINCT stats.id) as clicks,
count(DISTINCT conversions.id) as conversions,
sum(conversions.value) as conversion_value
FROM links
LEFT OUTER JOIN stats ON links.id = stats.parent_id
LEFT OUTER JOIN conversions ON links.id = conversions.link_id
GROUP BY links.id
ORDER BY links.created desc;
Run Code Online (Sandbox Code Playgroud)
我使用DISTINCT是因为我正在"分组",这确保同一行不会被计算多次.
问题是SUM(conversions.value)多次计算每行的"值"(由于分组)
我基本上想要SUM(conversions.value)为每个DISTINCT conversions.id 做.
那可能吗?
我正在创建一个链接缩短服务,我正在使用增量ID字段的base64编码/解码来创建我的URL.ID为"6"的网址为:http://mysite.com/Ng==
我还需要允许用户创建自定义网址名称,例如http://mysite.com/music
到目前为止,这是我的(可能是错误的)方法.帮助修复它将不胜感激.
当有人创建新链接时:
当有人创建新链接并传递自定义短网址时:
有没有更好的编码方法,可以让我把任何数量成短字符串,任何字符串转换成一个数字,这样我就可以随时查找短网址(无论是定制还是自动生成的)转动名字变成一个号码,查询链接ID等于那个数字?
我运行的图像共享网站有超过100万张图像(~150GB).我目前将这些存储在我的专用服务器的硬盘驱动器上,但是我很快耗尽了空间,所以我想将它们移到Amazon S3.
我已经尝试过做一个RSYNC,它花了一天的时间来扫描和创建图像文件列表.转移一天后,它只完成了7%,并使我的服务器速度变慢,所以我不得不取消.
有没有更好的方法来执行此操作,例如将它们GZIP到另一个本地硬盘驱动器然后传输/解压缩该单个文件?
我也想知道将这些文件存储在多个子目录中是否有意义,或者将所有百万+文件放在同一目录中是否合适?
我试图找出检查是否可以通过组合我在数组中的其他字符串创建特定字符串的最佳方法.其他字符串可以是任意长度,包括一个字符.此外,可以重新排序其他字符串中的字符.
因此,如果我们正在寻找"闪避"这个词并且我们的字符串数组是['god','house','d','e','cat','c','r','jump'],我们就会有一个匹配,因为我们可以将'god','d'和'e'中的字母组合起来创建'闪避'.
如果数组包含"dot"而不是"d",我们就不会有匹配,因为我们必须使用我们重新组合的每个单词中的所有字符(我们必须使用'o'和't'作为好).
我还想知道哪些单词用于创建指定的单词,所以如果匹配,我希望函数返回重新组合的单词的数组索引以创建指定的单词.对于上面的"闪避"示例,它将返回[0,2,3].
我的用户输入第三方服务的用户名和密码.我对该服务进行ajax调用以验证它们.问题是如果他们输入错误的用户名和密码,浏览器(至少是firefox)将显示"需要身份验证"对话框.如果他们然后在该对话框中输入正确的用户名和密码,我的ajax调用将返回"成功",并且看起来他们输入的原始用户/传递是正确的,而不是(因为他们更改了它).
有什么办法要么取消此对话框(这样我就可以再有我的服务告诉他们改正自己的用户名/密码),或以某种方式抓住了正确的用户名和密码,用户在浏览器对话框中输入?这是一个firefox扩展..所以我确定有一些方法可以从请求中获取正确的传递/登录..但如果有一个更简单的方法通过javascript将是很好的.
jQuery.ajax({
type: "GET",
dataType: "xml",
url: endpoint,
username: username,
password: password,
success: function(data,status) {
// Do something
},
error: function(XMLHttpRequest, textStatus, errorThrown){
alert(errorThrown);
}
});
Run Code Online (Sandbox Code Playgroud) 我正在寻找将〜100,000个图像从服务器传输到我的Amazon S3存储桶的最快方法.
那会循环遍历每个图像并执行单独的PUT请求吗?我希望有一个更快的方法,但没有找到任何东西.
我有一个包含100万行的"items"表和一个包含20,000行的"users"表.当我从"items"表中选择时,我在"users"表(items.user_id = user.id)上进行连接,这样我就可以从users表中获取"username".
我正在考虑在items表中添加用户名列并删除连接.我可以期待从中获得不错的性能提升吗?它已经很快了,但减少我的负载(这是非常高的)会很好.
缺点是如果用户更改了他们的用户名,项目仍然会反映他们的旧用户名,但如果我能期望性能提升,那么这对我来说没问题.
我问stackoverflow因为基准测试并没有告诉我太多.两个查询都很快完成.无论如何,我想知道是否删除连接会在很大程度上减轻数据库的负担.
带连接的示例查询:
SELECT Item.id,Item.submitter_id,Item.source_image,Item.cached_image,Item.source_title,Item.source_url,Item.width,Item.height,Item.status,Item.popular,Item.made_popular,Item.fave_count,Item.tags,Item.user_art,Item.nudity,Item.created,Item.modified,Item.removed, …
是否可以知道(服务器端)文件上传所需的时间?我有一个图片上传API,在我的回复中,我想返回上传时间(不包括脚本执行时间).