我有这个paypal IPN的问题.我看到,很多人都有.
我尝试以用户身份付费:ÁrvíztűrőTükörfúrógép在这个名字中,有所有特殊字符,匈牙利ABC中有什么.
我是匈牙利的PHP开发人员.
好吧,我试图在谷歌搜索很多.首先要检查paypal语言设置:http: //jlchereau.blogspot.hu/2006/10/paypal-ipn-with-utf8.html
每个设置都是UTF-8.
当paypal调用我的通知URL时,我(以前的开发人员)构建请求URL.当我记录这个网址时,我看到,字符集不是UTF-8,所以我强制脚本使用它.
$req = 'cmd=_notify-validate';
foreach ($_POST as $key => $value) {
if ($key == 'charset') {
$req .= "&charset=utf-8";
} else {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}
Run Code Online (Sandbox Code Playgroud)
}
这是有趣的事情.我找回了一个完全商品化的用户名.所以我通过char转储char.
名字将是:CHARS:193,114,118,237,122,116,26,114,26
吸.我尝试了一切以获得我真正的utf-8名称mb_detect_encoding是UTF-8.
我尝试使用iconv,mb_convert_encoding,utf8_encode和decode.没有成功.试图不urlencode名称,再没有成功.
有人可以告诉我,为什么会这样,我怎样才能找回真正的utf8名字?
该URL我送:CMD = _notify,验证和mc_gross = 10.00 protection_eligibility =合格&address_status =证实与payer_id = JA3YMCJFKSCNJ&税= 0.00&address_street = 1 +主+ ST&PAYMENT_DATE = 07%3A41%3A40 +月+ 05%2C + 2012 + PDT,PAYMENT_STATUS =完成*&的charset = UTF-8*address_zip = 95131&如first_name =%C1rv%EDzt%1AR%1A&mc_fee = 0.59&address_country_code = US&ADDRESS_NAME =%C1rv%EDzt%1AR%1A …
当Firefox开发者版介绍时,我很高兴,我可以使用WebIde,响应式设计工具,eyedroper等等......今天我已经够了.
它有很多错误,我不会开始记录我和我的同事发出并批准了多少错误...
我在谷歌搜索过这个主题,在我看到的任何地方,常规的Firefox都没有WebIde,响应式设计视图,吸管等......
我已经下载了常规的Firefox,看不出有什么区别.所有这些工具都在其中,所以在我看来,通过极光通道,我得到一个不稳定的东西,这在我的工作中阻碍它反而帮助我.
所以,我的问题是:这两个版本之间有什么显着差异吗?
我正在使用PHPStorm IDE,它有一个非常有用的功能,检查错误,php代码中的问题.
我知道如何在全球范围内关闭选项.例如,这是一个简单的代码:
require_once ('../config/configuration.inc');
define ("LIB_PATH", BASE_PATH . '/libraries/') ; //originally in conf i put here for test
require_once (LIB_PATH.'JFMF/Core/JFMF_APP.php');
$App = new JFMF_App();
Run Code Online (Sandbox Code Playgroud)
检查员警告我,我应该定义JFMF_APP类,并且还要注意我:我定义了LIB_PATH,我没有解决,因为定义在那里,如果还不够,require_once警告我使用PHPDoc解决这个问题(如果我这样做没有帮助),以及一些其他恼人的警告.
无论如何,专注于问题,最初是在configuration.inc中定义LIB_PATH.
我的问题是,我怎么能告诉PHPStorm,如果有一个include语句,处理它,并注册类,所以我的对象来自定义的类.我希望它是明智的,我的英语不太好.
代码是工作代码,运行没有错误.
也许其他PHPStorm初学者也会知道这一点.
由于HTML5不是基于XML的语言,我们可以忘记自闭标签.那很棒.所以当我想插入一条新的水平线时,我只是写<hr>而不是<hr />.
但是当我<hr>在Firefox中检查元素时,它呈现为<hr></hr>.它不会发生在任何其他浏览器中.
为什么会这样?这是Firefox的一些兼容性问题吗?
我遇到了一个我无法解决的问题.
我买了一个便宜的vps,用ubuntu 12.10然后安装了tomcat7,maven和nexus.所有这些都是最新的.这是一切的全新安装.我开始并部署了nexus,catalina没有错误,nexus没有错误,当我尝试使用admin/admin123登录时,我失败了.
我会告诉你我的任何日志文件你需要什么,请帮助我.
编辑:nexus是2.2-01
EDIT2:这是一个便宜的服务器,512 ram,没有X运行
我的security-configuration.xml是这样的:
<?xml version="1.0"?>
<security-configuration>
<version>2.0.3</version>
<enabled>true</enabled><!-- was true -->
<anonymousAccessEnabled>true</anonymousAccessEnabled>
<anonymousUsername>anonymous</anonymousUsername>
<anonymousPassword>{1FH7iFzhCukHI3ISkjq+AuQZb+bOMrB70bGqF2y6fNE=}</anonymousPassword>
<realms>
<realm>XmlAuthenticatingRealm</realm>
<realm>XmlAuthorizingRealm</realm>
</realms>
<securityManager>default</securityManager>
</security-configuration>
Run Code Online (Sandbox Code Playgroud) 在函数mb_detect_encoding中有一个严格模式的参数.
在第一个,最受欢迎的评论中:
<?php
$str = 'áéóú'; // ISO-8859-1
mb_detect_encoding($str, 'UTF-8'); // 'UTF-8'
mb_detect_encoding($str, 'UTF-8', true); // false
Run Code Online (Sandbox Code Playgroud)
这是真的,是的.但有人可以给我一个解释,为什么呢?
我有一个非常简单的 html/php 代码。它只有一个文本区域和一个发送按钮。
在 textarea 中,我有一个文本,在文本开头有 3 个新行。我需要那些换行符。
之后,当我提交表单时,由于某种原因,它是文本开头的换行符的第 1 部分。当我再次发送时,它再次发送,删除换行符,而内容的开头不是文本。
为什么会发生?我用 FF、Chrome、Safari、Oprea、IE 尝试过,结果相同。
您可以使用以下代码对其进行测试:
<?php
if (empty($_POST["operation"])) {
//Init the textarea value if form not submitted
$_POST["message"] = "\r\n\r\n\r\nThis is\r\na multiline text";
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Multiline test</title>
<meta charset="UTF-8" />
</head>
<body>
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
<textarea style="width: 200px; height: 150px;" name="message"><?php echo $_POST["message"]; ?></textarea>
<input type="submit" value="send" />
<input type="hidden" name="operation" value="send" />
</form>
</body>
Run Code Online (Sandbox Code Playgroud)
我一直在尝试在运行 Yosemite 10.10.2 的 macbook pro 上设置 phpMyAdmin。我在 phpmyadmin 中创建了一个 config 文件夹并为其提供了所需的权限:
chmod o+wr ~/Sites/phpmyadmin/config
Run Code Online (Sandbox Code Playgroud)
但是,当我进入“localhost/phpmyadmin/setup”时,出现错误:
Cannot load or save configuration
Please create web server writable folder config in phpMyAdmin top level
directory as described in documentation. Otherwise you will be only able to
download or display it.
Run Code Online (Sandbox Code Playgroud)
(我曾尝试附加图像,但由于我的声誉点无法附加)
我尝试重置权限,尝试删除并重新创建文件夹。尝试重新下载 phpmyadmin zip,但似乎没有任何效果。
任何人都可以告诉我我做错了什么以及我如何最好地解决这个问题?
我只是想知道,这里发生了什么.如果我使用这个:
var_dump(similar_text('abcd', 'abcdefg', $percent)); //output: int 4
Run Code Online (Sandbox Code Playgroud)
多数民众赞成,abcd在适当的地方,所以4是好结果.
让我们改变a并b在第一个变量的开头:
var_dump(similar_text('bacd', 'abcdefg', $percent)); //output: int 3
Run Code Online (Sandbox Code Playgroud)
我excpected到2或4而不是3.有人可以向我解释它为什么会这样吗?
我正在使用Netbeans,我喜欢它.
但是,我的方案是,当我想在对象A中使用对象B时,我无法使用自动完成功能 $this->B->
(是的,我知道,下面的代码有语法错误,问题不在于语法).
所以,例如:
require_once('Legion.class.php');
class MyClass {
private $Legion;
public function __construct() {
$this->Legion = Legion::getInstance();
}
public function showResult() {
$this->Legion-> //Not works here
$Legion = $this->Legion;
$Legion-> //Works
}
}
Run Code Online (Sandbox Code Playgroud)
当我输入$this->Legion->我已经得到了一些基本功能,关键字,例如do,echo,while等...
但是,如果我为这个对象B创建一个新变量,那么我将获得所有可访问的方法和属性.
在此之后,我也尝试使用vdoc没有成功:
/* @var $Legion Legion */
/* @var $this->Legion Legion */
Run Code Online (Sandbox Code Playgroud)
有人面临这个问题吗?有解决方案吗?