这可能是关于惯例,最佳做法和/或个人偏好的问题:
所以我是一个git noob,我的网站代码不值得分享,所以我不使用github等.
知道git不需要中央存储库我想:很棒,我的工作站和服务器是两个节点,我只是将更改从我的工作站推送到服务器.
当我开始时,代码只在服务器上,所以我:
git initgit clone me@myserver:path/to/repogit push me@myserver:path/to/repo我得到了奇怪的结果.我在本地添加的文件出现在服务器上,但未反映对现有文件的更改.
然后我读了一个警告,不要推送到已检出的远程分支.所以新的设置是:
git clone --bare制作一个裸库~/repos/mysite.git- 不是公用文件夹)git push me@myserver:repos/mysite.gitgit pull ~/repos/mysite.git获取最新信息这是正确的?这合乎逻辑吗?这是你会做的吗?
我正在尝试使用servlet进行IPN回调.我正在使用的代码由paypal提供,用于验证ipn数据.但每次我收到INVALID回复.
这是代码:
Enumeration en = req.getParameterNames();
String str = "cmd=_notify-validate";
while (en.hasMoreElements()) {
String paramName = (String) en.nextElement();
String paramValue = req.getParameter(paramName);
//str = str + "&" + paramName + "=" + URLEncoder.encode(paramValue,"UTF-8"); // for UTF-8 i set the encode format in my account as UTF-8
//str = str + "&" + paramName + "=" + URLEncoder.encode(paramValue,"ISO-8859-1");// for ISO-8859-1 i set the encode format in my account as ISO-8859-1
str = str + "&" + paramName + "=" …Run Code Online (Sandbox Code Playgroud) 我无法弄清楚如何使用CURL的FTP,特别是如何从我的PHP代码发出FTP命令:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'ftp://ftp.microsoft.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_POSTQUOTE,array('CWD bussys/','LIST')); /* ?!! */
echo '<hr><pre>'.htmlspecialchars(curl_exec($ch)).'</pre><hr>';
?>
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我想得到一个bussys的目录列表,但我得到一个主要(FTP根目录)列表.
顺便说一句,我尝试了以下组合:
LIST bussys/CWD bussys, LIST -a我需要将"{Z}"替换为"test(Z)",其中Z始终是使用PHP和正则表达式的无符号整数(除非有更快的方法?).
$code='{45} == {2}->val() - {5}->val()';
// apply regex to $code
echo $code;
// writes: test(45) == test(2)->val() - test(5)->val()
Run Code Online (Sandbox Code Playgroud)
棘手的部分是它需要尽可能以速度和内存使用的最佳方式完成.
我写了一个Joomla插件,最终会加载一个库.
库的路径是一个插件参数,因此当路径不正确时,后端会弹出一条消息,以及编辑插件参数的链接:
/administrator/index.php?option=com_plugins&view=plugin&client=site&task=edit&cid[]=36
看到最后的36?这是我的插件在数据库中的id(表jos_plugins).
我的问题是这个id在安装时会发生变化,也就是说,在不同的安装上,这将是另一回事.所以我需要以编程方式找到这个id.
问题是我无法从插件对象本身找到这个id(至于为什么不能,这将是joomla可以说是短视的设计决策).
因此,除非你知道一些巧妙的技巧,(我已经检查并仔细检查了JPlugin和JPluginHelper类),否则我将使用数据库.
编辑; 一些有用的链接:
猜猜我会用最后一个链接的智慧......
我目前正在开发一种系统,其功能是客户可以通过提供PIN"号码"查看其购买/续订/等的详细信息.
由于我们定位的客户类型,正在使用PIN而不是登录信息.PIN将打印在发送给他们的文档上.
提供PIN时显示的视图不会显示高度敏感的信息,如信用卡等,但不太敏感,如产品名称,类型,价格,条形码,维修等.
有问题的是PIN.我选择使用随机5个字符的PIN码(0-9,az AZ) - 区分大小写.我将删除一些同形字符('我','1','l','0','O','rn','vv'),所以组合的实际数量实际上更低.
我有几个问题:
打赌你没有看到这个?;)
因此,我的一个项目要求我专门阅读并理解.htaccess 文件。
可悲的是,在谷歌上搜索只会让试图让自己.htaccess工作的人陷入无限的困境(对不起,无法抗拒评论)。
不管怎样,我有点害怕试图从使用它的开源项目中得到这个东西。看,在过去的几周里,我最终浪费了很多时间试图用这个策略解决我的问题,结果却发现我在阅读 RFC 和规范并按照我的方式构建东西时做得更好。
所以,如果你知道一个库,或任何(希望干净!)执行此操作的代码,请分享。同时,如果您了解有关 .htaccess 文件格式的任何文章,我相信它们会非常方便。谢谢。
注意:我几乎是多语言的,可以使用任何代码库,即使最终代码是 Delphi。我知道我的要求太多了,但我希望少看 C++。在分享 C++ 代码之前,请考虑一下我的心理健康状况。:)
编辑:嗯,我想我只是要自己手动执行此操作。文件结构似乎是:
directive arg1 arg2 argN
<begin directive section>
</end directive section>
# single line comment
Run Code Online (Sandbox Code Playgroud) 正如你们中的一些人所知,我正在开发自己的IDE.你可能会想"哦,不,另一个?!" - 别担心,没有人强迫你使用它,我怀疑它会被认真发表.
所以,从主要问题开始.我正在尝试实现自动完成系统.确切的UI不是问题.但是,以灵活的方式存储语言/库令牌是我的主要问题.
假设我们向用户建议CSS选择器或属性.我们有类似的东西:
- css/core
- a // anchor tag
- etc // all valid html tags
- .stuff // class name parsed from user project
- ?etc // more stuff parsed from user project (ids, classes...)
- css/properties
- border // regular css properties - we also need to associate
// <border-style> and <color> value tokens
- etc // the rest of them
- css/values/border-style // property value tokens
- solid
- dotted
- css/values/color
- …Run Code Online (Sandbox Code Playgroud) 我遇到一种情况,我获得了一个 WinForms TextBox 实例,我想将自动完成功能附加到该实例。
我已经解决了自动完成(字符串匹配+下拉)的问题,并且到目前为止它工作可靠。
使用键盘导航下拉菜单的能力是什么(这是此类 UI 的标准)。
自然的解决方案是处理文本框的 KeyDown (或类似的)事件,并相应地移动下拉列表中的选择。
然而,要做到这一点,您需要重写该IsInputKey()事件以允许捕获箭头键事件。另一种方法是重写ProcessCmdKey()并处理那里的事件。这两个的问题是我无法覆盖任何内容,因为我无法替换文本框实例。
编辑:假设我有以下代码:
void _textBox_KeyDown(object sender, KeyEventArgs e)
{
if (_dropdown.Visible)
{
// TODO The stuff below fails because we need to either handle ProcessCmdKey or override IsInputKey
switch (e.KeyCode)
{
case Keys.Tab:
{
// click selected item
_dropdown.Items[GetSelectedItemIndex()].PerformClick();
break;
}
case Keys.Down:
{
// select next (or first) item
int i = GetSelectedItemIndex() + 1;
if (i >= _dropdown.Items.Count) i = 0;
_dropdown.Items[i].Select();
break; …Run Code Online (Sandbox Code Playgroud)