小编Non*_*der的帖子

PHP - 从消息中删除http/www(主机域除外)以禁用可点击链接

我有一个简单的留言板,让我们说:mywebsite.com,允许用户发布他们的消息.目前,董事会使所有链接都可以点击,即.当有人发布以:

http://, https://, www., http://www., https://www.
Run Code Online (Sandbox Code Playgroud)

然后脚本自动将它们作为链接(即添加A href ..标签).

问题 - 垃圾邮件太多了.所以我的想法是自动删除上面的http | s/www,这样这些就不会成为"可点击的链接".但是,我想让海报链接到我网站中的页面,即.当消息包含mywebsite.com的链接时,不要删除http | s/www.

我的想法是创建两个数组:

$removeParts = array('http://', 'https://', 'www.', 'http://www.', 'https://www.');

$keepParts = array('http://mywebsite.com', 'http://www.mywebsite.com', 'www.mywebsite.com', 'http://mywebsite.com', 'https://www.mywebsite.com', 'https://mywebsite.com');
Run Code Online (Sandbox Code Playgroud)

但我不知道如何正确使用它们(可能str_replace可能会以某种方式工作).

以下是发布之前和发布之后的$ message示例:

$ message之前:

你好世界,感谢http:// mywebsite/about我学到了很多东西.我发现你有http://www.bing.com,https://google.com/search和一些www.spamwebsite.com/refid=spammer2.

$ message后:

你好世界,感谢http://mywebsite.com/about我学到了很多东西.我在bing.com,google.com/search和一些spamwebsite.com/refid=spammer2上找到了你.


请注意,用户在帖子表单中输入明文,因此脚本只能使用此明文(而不是href等).

html php url-parsing input-sanitization

9
推荐指数
1
解决办法
393
查看次数

检查CSS标题属性(如果它不为空)并添加内容

我的目标是:检查title属性是否为空; 如果不是那么应该添加此title属性的值加上连字符.另一方面,如果title属性为空,则根本不应添加" - ".

这是我目前的CSS代码:

div:hover::before{content:attr(title):not(attr(title)="") " - ";}
Run Code Online (Sandbox Code Playgroud)

但它没有按预期工作.

例如:

<div title="My username">some text</div>
Run Code Online (Sandbox Code Playgroud)

应该在悬停时显示以下内容:

我的用户名 - 一些文字

但如果:

<div title="">some text</div>
Run Code Online (Sandbox Code Playgroud)

或(没有div的标题):

<div>some text</div>
Run Code Online (Sandbox Code Playgroud)

那么悬停时的显示应该是:

一些文字

有可能解决它吗?

css css-selectors css3

6
推荐指数
1
解决办法
3006
查看次数

如何通过CSS或Javascript默认设置为浏览器“阅读器视图”模式?

现在,所有现代网络浏览器都提供“阅读器视图”模式。是否可以通过CSS和/或Javascript告诉浏览器在屏幕宽度最大为480px的移动设备上自动使用“阅读器视图”版本?

我只是不想创建该网站的移动版本,因为“阅读器视图”版本可以在移动设备(屏幕宽度为320px-480px)上完美运行。

PS。触发“阅读器视图”图标时,我不需要信息-我想在屏幕宽度小于480px的移动设备上强制使用“阅读器视图”模式。此外,Reader View模式也可以在其他浏览器中使用(不仅在Firefox中)。

html javascript css

5
推荐指数
1
解决办法
2378
查看次数