我正在尝试使用正则表达式搜索网页,但我收到以下错误:
TypeError:不能在类字节对象上使用字符串模式
我理解为什么,urllib.request.urlopen()返回一个字节流,所以,至少我猜测,重新不知道要使用的编码.在这种情况下我该怎么办?有没有办法在urlrequest中指定编码方法,或者我需要自己重新编码字符串?如果是这样我想要做什么,我假设我应该从头信息或编码类型中读取编码,如果在html中指定,然后重新编码为它?
我有一个投票系统,它将点击的项目的ID发送到PHP脚本,PHP更新数据库并通过JSON编码的数组回送新的投票计数.
这是jQuery:
$(".vote_up").click(function(){
var id = this.id;
var vote = $(this).attr("class");
var data = "id=" + id + "&vote=" + vote;
$.ajax
({
type: "POST",
url: "vote.php",
data: data,
cache: false,
success: function(data)
{
for(var x in data) {
$(".votes_up").find(id).html(data[x].vote_up);
$(".votes_down").find(id).html(data[x].vote_down);
}
}
});
});
Run Code Online (Sandbox Code Playgroud)
因此,当我首先构建项目时,我将数据库中的记录ID设置为项目ID.所以我要做的是引用被点击的确切项目,并将其HTML设置为从PHP返回的数据.我已经检查了Firebug并且我得到了正确的数据,但投票数没有变化.有任何想法吗?
这是PHP供参考:
$query = "SELECT vote_up, vote_down FROM posts WHERE id = '".$id."'";
$result1 = mysql_query($query);
$output = Array();
while ($row = mysql_fetch_array($result1)){
$output[] = Array(
"vote_up" => $row['vote_up'],
"vote_down" => $row['vote_down'],
);
}
echo …Run Code Online (Sandbox Code Playgroud) 我正在努力使这项工作,我不明白为什么它不起作用,因为它对我有意义,但它似乎没有意义的Java.
当您阅读代码时,我期望_NAME被TEST替换,同时保持文本的相同结构(保持\n)以便稍后保存(尚未完成)
我也使用ArrayList存储它,但替换从未起飞,所以我很无能为力
try {
BufferedReader reader = new BufferedReader (new InputStreamReader (
new FileInputStream (temp), "utf-8"));
String line = reader.readLine();
StringBuffer text = new StringBuffer();
while(line != null) {
line.replace("[_NAME]", "TEST");
Logger.info(line);
line = reader.readLine();
}
reader.close();
} catch(FileNotFoundException ex) {
} catch(UnsupportedEncodingException ex) {
} catch(IOException ex ) {}
Run Code Online (Sandbox Code Playgroud) 我有一个C#控制台应用程序,我想继续运行,即使它的数据库崩溃.在这种情况下,它应该轮询数据库以查看它何时重新联机,然后恢复操作.我有这个代码,我不喜欢:
public static T Robust<T>(Func<T> function)
{
while (true)
{
try
{
return function();
}
catch (GenericADOException e)
{
Console.WriteLine("SQL Exception. Retrying in 10 seconds");
Thread.Sleep(10000);
}
}
}
[...]
N.Robust(() => Session.CreateCriteria(typeof(MyEntity)).List());
Run Code Online (Sandbox Code Playgroud)
问题是我必须在N.Robust任何地方插入那个令人讨厌的构造混乱的代码.此外,我冒着忘记它的风险.我一直在研究使用NHibernate的EventListeners或Inceptors,但还是无法使它工作.我是否真的需要使用NHibernate来实现这项功能?
更新 好了,所以我已经克服了我的两个问题之一.通过注入我自己的事件监听器,我至少可以确保对数据库的所有调用都通过上述方法.
_configuration.EventListeners.LoadEventListeners
= new ILoadEventListener[] { new RobustEventListener() };
[...]
public class RobustEventListener : ILoadEventListener
{
public void OnLoad(LoadEvent e, LoadType type)
{
if (!RobustMode)
throw new ApplicationException("Not allowed");
}
}
Run Code Online (Sandbox Code Playgroud)
我仍然有一个杂乱的代码库,但我认为这是一个合理的价格,以支付增加服务正常运行时间.
您好亲爱的stackoverflow成员我最近开始学习C++,今天我写了一个小游戏,但我的随机功能无法正常工作.当我不止一次调用我的随机函数时,它不会重新生成一个数字,它会一遍又一遍地打印相同的数字.如何在不使用for循环的情况下解决此问题?谢谢
#include "stdafx.h"
#include <iostream>
#include <time.h>
using namespace std;
int rolld6();
int main()
{
cout<<rolld6()<<endl;
cout<<rolld6()<<endl;
system("PAUSE");
return 0;
}
int rolld6()
{
srand(time(NULL));
return rand() % 6 + 1;;
}
Run Code Online (Sandbox Code Playgroud) 我有一个输入字段:
<input type="text" placeholder="whatever">
Run Code Online (Sandbox Code Playgroud)
风格:
input {
margin: 0;
padding: 0 6px;
font-size: 19px;
line-height: 19px;
height: 36px;
width: 255px;
}
Run Code Online (Sandbox Code Playgroud)
问题是对于webkit CHROME中的占位符,行高不起作用.所以输入字段中的文本以丑陋的方式对齐.其他人看到了这个,现在如何解决它?
谢谢
我正在尝试为sign_in操作使用名为"devise"的不同/自定义布局.我在设计维基中找到了这个页面,第二个例子甚至说你可以按行动(在这种情况下,sign_in动作),但它没有显示这样做的例子.IRC的某个人告诉我,我可以试试这个:
class ApplicationController < ActionController::Base
protect_from_forgery
layout :layout_by_resource
def layout_by_resource
if devise_controller? && resource_name == :user && action_name == 'sign_in'
"devise"
else
"application"
end
end
end
Run Code Online (Sandbox Code Playgroud)
但它似乎没有工作,因为它仍然加载默认的应用程序布局.我将不胜感激任何帮助.
这一直困扰着我.我正在尝试创建一个带有哈希表的函数,并返回所述哈希表.但是我在头文件中收到此错误,
error: ‘string’ was not declared in this scope.
error: template argument 1 is invalid
Run Code Online (Sandbox Code Playgroud)
这是头文件本身:
#ifndef NAME_SPAWN_H
#define NAME_SPAWN_H
#include <QString>
#include <QHash>
#include <string>
class Name_Spawn
{
public:
Name_Spawn();
void initalize();
private:
QString int_2_str(int);
void seed();
QHash<string,QString> setTable(QHash<string,QString>);
};
#endif // NAME_SPAWN_H
Run Code Online (Sandbox Code Playgroud)
如您所见,已声明字符串.有任何想法吗?我没办法.
我是C#的新手,因此我正在寻找外行的条款.基本上,我想做的是转:
键1 = VAL1 |键2 =值2 | ... | keyN = VALN
进入数据库数组,你猜对了,key1返回val1,key2返回val2等等.我知道我可以使用split返回一个字符串,但从那时起,我就不知所措了.任何帮助将不胜感激!我希望我的意图明确,但如果您有任何疑问,请不要犹豫!