我写了一个非常简单的函数:
function editCategory() {
$ID = urlencode($_GET['id']);
$cname = mysql_fix_string($_POST['cname']);
$kabst = mysql_fix_string($_POST['kabst']);
$kselect = $_POST['kselect'];
$subsl = $_POST['subsl'];
$kradio = $_POST['kradio'];
$ksubmit = $_POST['ksubmit'];
if (isset($ksubmit)) {
$query = "UPDATE category SET name = '$cname', description = '$kabst', published = '$kselect', home = '$kradio', subcat = '$subsl' WHERE id = $ID ";
$result = mysql_query($query);
if (mysql_affected_rows () == 1) {
echo "ok";
}
else{
echo mysql_error();
}
}
}
function mysql_fix_string($string)
{
if (get_magic_quotes_gpc())
$string = stripslashes(($string));
return …
Run Code Online (Sandbox Code Playgroud) public Form1()
{
InitializeComponent();
Collection<Test> tests = new Collection<Test>();
tests.Add(new Test("test1"));
tests.Add(new Test("test2"));
foreach (Test test in tests)
{
Button button = new Button();
button.Text = test.name;
button.Click+=new EventHandler((object obj, EventArgs arg)=>{
this.CreateTest(test);
});
this.flowLayoutPanel1.Controls.Add(button);
}
}
public void CreateTest(Test test)
{
MessageBox.Show(test.name);
}
}
Run Code Online (Sandbox Code Playgroud)
当我点击按钮女巫文本是'test1'时,消息框将显示'test2',但我的期望是'test1'.那么,有人请告诉我为什么或我的代码有什么问题.
我知道Lisp和Scheme程序员通常会说eval
除非必要,否则应该避免.我已经看到了几种编程语言的相同建议,但我还没有看到一个反对使用的明确论据列表eval
.我在哪里可以找到使用中潜在问题的说明eval
?
例如,我知道GOTO
程序编程中的问题(使程序难以理解且难以维护,难以找到安全问题等),但我从未见过反对的论点eval
.
有趣的GOTO
是,相反的论点应该对延续有效,但我看到Schemers,例如,不会说延续是"邪恶的" - 你在使用时应该小心.他们更倾向于使用代码而eval
不是代码使用continuation(据我所知 - 我可能是错的).
我无法理解的用法glOrtho
.有人可以解释它的用途吗?
是否用于设置xy和z坐标限制的范围?
glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);
Run Code Online (Sandbox Code Playgroud)
这意味着x,y和z范围是-1到1?
我有一个datetime.datetime属性var.我想知道它是不是一个小时的当前时间.就像是
var.hour<datetime.datetime.today().hour - 1
Run Code Online (Sandbox Code Playgroud)
上述语法的问题是
datetime.datetime.today().hour
Run Code Online (Sandbox Code Playgroud)
返回一个数字,如"10",它不是一个真正的日期比较,而是更多的数字比较.
什么是正确的语法?
谢谢!
乔尔
我有以下几行 ~/.emacs.d/init.el
(custom-set-variables
'(flymake-allowed-file-name-masks
(quote
(
("\\.cc\\'" flymake-simple-make-init)
("\\.cpp\\'" flymake-simple-make-init)))))
(add-hook 'find-file-hook 'flymake-find-file-hook)
Run Code Online (Sandbox Code Playgroud)
当我在同一个文件夹中打开一个具有正确Makefile的C++文件时,我会得到即时编译和错误报告(Flymake将检查语法并在代码编辑期间报告错误和警告).
Makefile有一个check-syntax
目标:
.PHONY: check-syntax
check-syntax:
$(CXX) -Wall -Wextra -pedantic -fsyntax-only $(CHK_SOURCES)
Run Code Online (Sandbox Code Playgroud)
问题是,当我打开一个没有相应Makefile的.cc文件时,我得到一个恼人的对话框,警告我关于flymake被禁用.
因此,如果我emacs *.cc
在一个包含20个C++文件的文件夹中启动,我会得到20个模态对话框,其中显示的内容类似于[...]找不到构建文件.Flymake将被关闭.
我可以使用一些钩子来禁用该警告吗?你能提供样本elisp代码和解释你如何找到合适的钩子吗?
是否可以为枚举定义运算符?例如,我在课堂上有枚举月份,我希望能够写出++ my_month.
谢谢
PS
为了避免溢出我做了这样的事情:
void Date::add_month()
{
switch(my_month_)
{
case Dec:
my_month_ = Jan;
add_year();
break;
default:
++my_month_;
break;
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个关于全局变量初始化的问题.
function hello_testing() {
global $conditional_random;
if (isset($conditional_random)) {
echo "foo is inside";
}
}
Run Code Online (Sandbox Code Playgroud)
在hello_testing()
调用函数之前,可能不会初始化全局变量(conditional_random).
那么,我的验证通过isset()
何时$conditional_random
未初始化会发生什么?它会失败还是永远都是真的?
我在App Engine(Python)中使用ReferencePropertys时遇到了一些麻烦.
为了一点乐趣,我正在尝试建模文件夹/文件系统,但无法获取文件夹引用文件夹.
我的第一次尝试是这样的:
class Folder(db.Model):
id = db.StringProperty()
name = db.StringProperty()
created = db.DateTimeProperty(auto_now_add=True)
folder = db.ReferenceProperty(Folder, collection_name="folders")
Run Code Online (Sandbox Code Playgroud)
但是,当尝试定义"文件夹"时,未定义"文件夹",因此失败.
我也尝试在"文件夹"的主声明之外定义"文件夹",如下所示:
class Folder(db.Model):
id = db.StringProperty()
name = db.StringProperty()
created = db.DateTimeProperty(auto_now_add=True)
Folder.folder = db.ReferenceProperty(Folder, collection_name="folders")
Run Code Online (Sandbox Code Playgroud)
但是失败了:AttributeError:'Folder'对象没有属性'folders'
我有点难过.有没有人有这方面的经验,或解决这个问题?
提前致谢.
我试图time.strftime()
使用Unicode格式字符串调用Python的函数:
u'%d\u200f/%m\u200f/%Y %H:%M:%S'
Run Code Online (Sandbox Code Playgroud)
(\u200f
是"从右到左标记"(RLM).)
但是,我得到一个例外,即RLM字符无法编码为ascii:
UnicodeEncodeError:'ascii'编解码器无法对位置2中的字符u'\ u200f'进行编码:序数不在范围内(128)
我试图寻找替代方案,但找不到合理的方法.是否有替代此函数的方法,或使其与Unicode字符一起使用的方法?