我的数据库名称是SPM,我想将其更改为spm(小写字母).
我试过用
RENAME DATABASE SPM TO spm;
Run Code Online (Sandbox Code Playgroud)
,但我收到以下错误消息:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATABASE SPM to spm' at line 1
Run Code Online (Sandbox Code Playgroud)
我的服务器版本:5.0.45
所以我在客户端(输入后)删除控制字符(tab,cr,lf,\ v和所有其他隐形字符),但由于客户端不可信,我必须在服务器中删除它们.
所以根据这个链接http://www.utf8-chartable.de/
控制字符从x00到1F,从7F到9F.因此我的客户端(javascript)控件删除功能是:
return s.replace(/[\x00-\x1F\x7F-\x9F]/g, "");
Run Code Online (Sandbox Code Playgroud)
和我的php(服务器)控件删除功能是:
$s = preg_replace('/[\x00-\x1F\x7F-\x9F]/', '', $s);
Run Code Online (Sandbox Code Playgroud)
现在,这似乎会产生国际utf8字符的问题,例如PHP中的ς(xCF x82)(因为x82在第二个序列组中),javascript等效不会产生任何问题.
现在我的问题是,我应该将控制字符从7F删除到9F吗?据我所知,从127到159(7F到9F)的序列显然可以是有效的UTF-8字符串的一部分?
另外,也许我甚至不应该过滤00到31个控制字符,因为这些字符中的一些可能会出现在一些奇怪的(日语?中文?)但是有效的utf-8字符?
现在我看到许多网站很少或没有<br/>标签.CSS是否已经避免了<br/>或者<br/>仍然有用?
我问这个,以便我知道<br/>将来是否使用.
当使用IntelliJ IDEA并编写代码时,以及当您编写的代码有错误时,我知道使IDEA显示错误详细信息的唯一方法是将鼠标光标悬停在问题上.

但这需要将我的手从键盘移动到鼠标.是否存在导致弹出错误消息的热键,或者配置此类热键的方法?
在Ruby 1.9程序中,我想格式化当前时间Thu 1:51 PM.我应该在一天中的某个小时使用什么格式的代码(1在本例中)?
Time.now.strftime '%a %I:%M %p' #=> "Thu 01:51 PM"
Time.now.strftime '%a %l:%M %p' #=> "Thu 1:51 PM"
Run Code Online (Sandbox Code Playgroud)
%I有一个前导零(01).%l有一个领先的空间( 1).我没有在strftime文档中看到小时的任何其他格式代码.我无法使用,.lstrip因为空间位于字符串的中间.我可以使用.gsub(/ +/, " "),但我想知道是否有一个更少的hacky,更简单的方式.
我在运行bundle install时遇到ruby版本2.4.4,OSX Mojave的这个问题:
Fetching nokogiri 1.8.5
Installing nokogiri 1.8.5 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
ERROR: cannot discover where libxml2 is located on your system. please
make sure `pkg-config` is installed.
Run Code Online (Sandbox Code Playgroud)
所以我跑了
xcode-select --install
Run Code Online (Sandbox Code Playgroud)
但是当我运行gem install nokogiri时,我得到了以下输出:
ERROR: While executing gem ... (TypeError)
incompatible marshal file format (can't be read)
format version 4.8 required; 60.33 given
Run Code Online (Sandbox Code Playgroud)
我试着将cookies_serializer设置为:
Rails.application.config.action_dispatch.cookies_serializer = :hybrid
Run Code Online (Sandbox Code Playgroud)
但没有任何效果
有没有办法来解决这个问题 ?我现在甚至无法运行我的rails服务器.
当我尝试添加一个optiona时select,option我试图将追加的末尾附加到第一个option而不是select它自身.
$(".ct [value='']").each(function() {
$(this).append($("<option></option>").attr("value", "Reset").text("Reset"));
});
Run Code Online (Sandbox Code Playgroud)
救命?
我正在使用历史API将新URL推送到网页而不重新加载它.我有多个按钮,都有不同的功能.
我的脚本现在几乎没有问题.当我按下按钮时会发生一些事情,当我返回时,脚本会触发事件监听器而不重新加载页面.
但是,当我现在按下前进按钮时,我想继续前进.URL已正确更改为下一个,但事件侦听器仍然会像按下后退按钮一样触发
例:
index1.htmlindex2.htmlindex3.htmlindex2.htmlindex3.html,但内容是index1.html我想这是因为我有一个监听器,它会监听popstate后退按钮和按下前进按钮的情况.如何区分按下哪种按钮?
这是绑定侦听器的部分:
if (window.history && window.history.pushState) {
$(window).unbind('popstate');
$(window).bind('popstate', function (e) {
clearOverlays();
var url = URL
$.ajax ( {
url : url
}).done ( function ( data ) {
console.log(data);
});
});
}
Run Code Online (Sandbox Code Playgroud) 我的页面上有表单,用户可以在其中键入一些文本并提交.然后将文本发送到服务器(node.js上的REST API)并保存到DB(postgres).
问题是偶尔会将一些奇怪的字符(控制字符)保存到DB中 - 例如转义控制字符(^ [)或退格控制字符(^ H).通常它不会破坏任何东西,因为这些字符是不可见的,所以html正确呈现.但是,当我为RSS阅读器提供xml内容时,它们(阅读器)会因为这些控制字符而返回"格式错误的XML"(删除后它们会起作用).
我的问题是我如何从客户端级别(javascript)或服务器级别(javascript/node.js)的字符串中删除这些字符?
在以下代码中(Try Flow):
type Response = {
err: ?string;
data: Object;
}
function length(x): Response {
return { data : {} };
}
length(10)
Run Code Online (Sandbox Code Playgroud)
我做了err可选,但仍然得到一个错误:
err在对象文字中找不到属性
javascript ×5
html ×3
ruby ×2
css ×1
css3 ×1
database ×1
encoding ×1
flowtype ×1
html-select ×1
html5 ×1
jquery ×1
line-breaks ×1
macos-mojave ×1
mysql ×1
nokogiri ×1
option ×1
php ×1
rename ×1
ruby-1.9 ×1
rubygems ×1
strftime ×1
time ×1
time-format ×1
utf-8 ×1